Arrays de JavaScript: datos ordenados por índice

Un array de JavaScript almacena una colección ordenada de valores indexados por enteros. Usa arrays cuando el orden importa: listas, colas o cualquier dato donde la posición tiene significado. El acceso por índice es inmediato (O(1)) sin importar el tamaño del array, y length sigue el tamaño automáticamente.

Ejemplo de array en JavaScript para crear y acceder a datos

Salida:

La salida aparecerá aquí...

Salida:

rojo
3
[
  "rojo",
  "verde",
  "azul",
  "amarillo"
]

Cómo funciona este ejemplo

  1. ["rojo", "verde", "azul"] crea un array de tres elementos usando la sintaxis literal con corchetes, la forma estándar de definir un array de JavaScript con valores iniciales.
  2. colores[0] lee el primer elemento. Los arrays usan indexación base cero: el índice 0 es el primer elemento, 1 es el segundo, y así sucesivamente.
  3. colores.length devuelve el número de elementos. Se actualiza automáticamente al agregar o quitar elementos.
  4. colores.push("amarillo") agrega un elemento al final. El array original se modifica en el lugar.

¿Qué es un array de JavaScript?

Los arrays de JavaScript son objetos optimizados para índices numéricos: la propiedad length se actualiza automáticamente al agregar o eliminar elementos, y métodos integrados como map, filter, reduce y forEach iteran en orden de índice. Usa Array.isArray(valor) para detectar un array de forma fiable, ya que typeof [] devuelve "object".

Errores comunes con arrays de JavaScript

Usar new Array(n) para crear un array de un solo elemento.

Incorrecto:

const elementos = new Array(3); // 3 espacios vacíos, no [3]

Correcto:

const elementos = [3]; // array que contiene el número 3

Un único argumento numérico establece length y crea espacios vacíos, no un elemento.

Esperar que los arrays dispersos se recorran por completo.

Incorrecto:

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

Correcto:

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

map omite espacios vacíos. Array.from crea elementos definidos, por eso el callback se ejecuta en cada índice.

Métodos mutables vs no mutables en arrays

Muta el array originalDevuelve un array nuevo
push, pop, splice, sort, reversemap, filter, slice, concat, toSorted

ES2023 agregó toReversed(), toSorted(), toSpliced() y with(), contrapartes no mutables de sus versiones que modifican en el lugar. Si necesitas el array original y también el ordenado, prefiere toSorted() sobre sort().

Consideraciones de rendimiento

push y pop operan al final del array en O(1). shift y unshift reindexan todos los elementos, por lo que son O(n). En bucles críticos, evita operaciones al inicio en arrays grandes.

Más ejemplos

Array de arrays: acceder a datos anidados:

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

Cada elemento es otro array. Un array de arrays en JavaScript es una forma simple de modelar una cuadrícula, y el doble índice [fila][columna] accede a valores internos.

Pila con push y pop:

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

push agrega al final, pop elimina del final, ambos en O(1). at(-1) lee el último elemento sin conocer la longitud.

Cuándo usar arrays de JavaScript

  • Colecciones ordenadas donde importa el acceso por posición (listas, colas, pilas).
  • Secuencias que deben crecer o reducirse: push/pop para pila, push/shift para cola.
  • Datos agrupados modelados como array de arrays (filas, columnas, matriz).
  • No uses arrays para búsquedas clave-valor, usa Map o un objeto literal.
  • No uses arrays cuando cada elemento debe ser único, usa Set.

Preguntas frecuentes

¿Cómo creas un array de JavaScript con valores iniciales?

Usa notación con corchetes: const colores = ["rojo", "verde", "azul"]. Es la sintaxis literal recomendada. Array.of(1, 2, 3) también funciona, pero rara vez se necesita fuera de código polimórfico donde new Array(n) sería ambiguo.

¿Qué métodos de array en JavaScript mutan el array original?

push, pop, shift, unshift, splice, sort, reverse y fill modifican el array en el lugar. Alternativas modernas como toSorted, toReversed y toSpliced (ES2023) devuelven arrays nuevos sin tocar el original.

¿Cómo compruebas si un valor es un array en JavaScript?

Llama a Array.isArray(valor). Funciona entre iframes y realms, a diferencia de instanceof Array, que falla cuando el array se creó en un contexto de ejecución distinto.