Arrays JavaScript: dados ordenados com índice

Um array em JavaScript armazena uma coleção ordenada de valores indexados por inteiros. Use arrays quando a sequência importa: listas, filas ou qualquer dado em que a posição tenha significado. O acesso por índice é instantâneo (O(1)) independentemente do tamanho do array, e length acompanha o tamanho automaticamente.

Exemplo de Array em JavaScript para criar e acessar dados

Saída:

A saída aparecerá aqui...

Saída:

vermelho
3
[
  "vermelho",
  "verde",
  "azul",
  "amarelo"
]

Como este exemplo funciona

  1. ["vermelho", "verde", "azul"] cria um array com três elementos usando sintaxe literal com colchetes, a forma padrão de definir um array em JavaScript com valores iniciais.
  2. cores[0] lê o primeiro elemento. Arrays usam indexação baseada em zero: o índice 0 é o primeiro elemento, 1 é o segundo e assim por diante.
  3. cores.length retorna o número de elementos. Ele é atualizado automaticamente conforme itens são adicionados ou removidos.
  4. cores.push("amarelo") acrescenta um elemento ao final. O array original é modificado no próprio lugar.

O que é um array em JavaScript?

Arrays em JavaScript são objetos otimizados para índices numéricos: a propriedade length é atualizada automaticamente quando você adiciona ou remove elementos, e métodos nativos como map, filter, reduce e forEach iteram na ordem dos índices. Use Array.isArray(value) para detectar um array com confiabilidade, já que typeof [] retorna "object".

Erros comuns com arrays JavaScript

Usar new Array(n) para criar um array de um elemento.

Errado:

const itens = new Array(3); // 3 slots vazios, não [3]

Certo:

const itens = [3]; // array contendo o número 3

Um único argumento numérico define length e cria slots vazios, não um elemento.

Esperar que arrays esparsos iterem por completo.

Errado:

const a = Array(3).map((_, i) => i); // [vazio × 3]

Certo:

const a = Array.from({ length: 3 }, (_, i) => i); // [0, 1, 2]

map ignora slots vazios. Array.from cria elementos definidos, então o callback roda para cada índice.

Métodos de array que mutam vs que não mutam

Muta o originalRetorna novo array
push, pop, splice, sort, reversemap, filter, slice, concat, toSorted

O ES2023 adicionou toReversed(), toSorted(), toSpliced() e with(), versões não mutáveis de métodos que antes operavam no próprio array. Se você precisa do original e da ordem ordenada, prefira toSorted() em vez de sort().

Considerações de desempenho

push e pop operam no fim do array em O(1). shift e unshift reindexam todos os elementos, então são O(n). Em loops críticos, evite operações no início em arrays grandes.

Mais exemplos

Array de arrays: acessar dados aninhados:

const matriz = [[1, 2], [3, 4], [5, 6]];
console.log(matriz[1][0]); // 3

Cada elemento é, por si só, um array. Um array de arrays em JavaScript é uma forma simples de modelar uma grade, e a indexação dupla [linha][coluna] alcança valores internos.

Pilha com push e pop:

const pilha = [10, 20, 30];
pilha.push(40);
console.log(pilha.at(-1)); // 40
pilha.pop();
console.log(pilha);        // [ 10, 20, 30 ]

push adiciona no fim, pop remove do fim, ambos em O(1). at(-1) lê o último elemento sem precisar conhecer o comprimento.

Quando usar arrays em JavaScript

  • Coleções ordenadas em que o acesso por posição importa (listas, filas, pilhas).
  • Qualquer sequência que precisa crescer ou encolher: push/pop para pilha, push/shift para fila.
  • Dados agrupados modelados como array de arrays (linhas, colunas, matriz).
  • Não use arrays para busca por chave-valor; use Map ou objeto simples.
  • Não use arrays quando todo elemento precisa ser único; use Set.

FAQ

Como criar um array em JavaScript com valores iniciais?

Use notação com colchetes: const cores = ["vermelho", "verde", "azul"]. Essa é a sintaxe literal preferida. Array.of(1, 2, 3) também funciona, mas raramente é necessário fora de código polimórfico em que new Array(n) seria ambíguo.

Quais métodos de array em JavaScript mutam o array original?

push, pop, shift, unshift, splice, sort, reverse e fill modificam o array no próprio lugar. Alternativas modernas como toSorted, toReversed e toSpliced (ES2023) retornam novos arrays sem tocar no original.

Como verificar se um valor é um array em JavaScript?

Chame Array.isArray(value). Isso funciona entre iframes e realms, ao contrário de instanceof Array, que falha quando o array foi criado em outro contexto de execução.