GUÍA · Arrays

Métodos de arrays en JavaScript: los más usados

Guía de los métodos de arrays que más se usan en JavaScript: push, pop, includes, slice, splice, map, filter, find, reduce y sort, con ejemplos y su resultado.

Un array es una lista ordenada de valores y JavaScript incluye métodos para añadir, quitar, buscar y transformar sus elementos. Algunos modifican el array original (mutan) y otros devuelven uno nuevo. Distinguirlos evita muchos errores.

Añadir y quitar elementos (modifican el array)

JavaScript
const frutas = ['pera', 'uva'];

frutas.push('mango');    // añade al final
console.log(frutas);     // ['pera', 'uva', 'mango']

frutas.pop();            // quita el último
frutas.unshift('kiwi');  // añade al principio
frutas.shift();          // quita el primero
console.log(frutas);     // ['pera', 'uva']

Buscar elementos

JavaScript
const numeros = [4, 8, 15, 16];

console.log(numeros.includes(15));        // true
console.log(numeros.indexOf(16));         // 3  (-1 si no existe)
console.log(numeros.find(n => n > 5));    // 8  (primer elemento que cumple)
console.log(numeros.findIndex(n => n > 5)); // 1
console.log(numeros.some(n => n > 15));   // true
console.log(numeros.every(n => n > 3));   // true

find devuelve undefined si ningún elemento cumple la condición.

Obtener copias o partes (no modifican)

JavaScript
const letras = ['a', 'b', 'c', 'd'];

console.log(letras.slice(1, 3)); // ['b', 'c']  (el final no se incluye)
console.log(letras.concat(['e'])); // ['a', 'b', 'c', 'd', 'e']
console.log([...letras, 'e']);     // igual, con spread
console.log(letras);               // ['a', 'b', 'c', 'd'] (sin cambios)

Insertar o borrar en cualquier posición

splice modifica el array: elimina y/o inserta desde una posición.

JavaScript
const cola = ['A', 'B', 'C', 'D'];
cola.splice(1, 2);          // borra 2 elementos desde la posición 1
console.log(cola);          // ['A', 'D']
cola.splice(1, 0, 'X');     // inserta 'X' sin borrar nada
console.log(cola);          // ['A', 'X', 'D']

Transformar: map, filter y reduce

Estos tres devuelven resultados nuevos y no cambian el array original.

JavaScript
const precios = [10, 25, 40];

const conIva = precios.map(p => p * 1.21);
console.log(conIva); // [12.1, 30.25, 48.4]

const baratos = precios.filter(p => p < 30);
console.log(baratos); // [10, 25]

const total = precios.reduce((suma, p) => suma + p, 0);
console.log(total); // 75
  • map crea un array del mismo tamaño con cada elemento transformado.
  • filter conserva solo los elementos que cumplen una condición.
  • reduce combina todos los elementos en un único resultado.

Ordenar: cuidado con sort

sort modifica el array y, sin función de comparación, ordena como si fueran texto:

JavaScript
const valores = [10, 2, 33, 4];
console.log([...valores].sort());            // [10, 2, 33, 4]  (orden alfabético)
console.log([...valores].sort((a, b) => a - b)); // [2, 4, 10, 33]

Copia el array con [...valores] si no quieres alterar el original.

Convertir a texto y recorrer

JavaScript
const palabras = ['Hola', 'mundo'];
console.log(palabras.join(' ')); // 'Hola mundo'

palabras.forEach(p => console.log(p));
for (const p of palabras) console.log(p);

Resumen rápido

Necesito...Método
Añadir al finalpush
Saber si existe un valorincludes
El primer elemento que cumplefind
Una lista filtradafilter
Transformar cada elementomap
Un único valor (suma, máximo...)reduce
Una parte sin modificarslice

Última actualización: . Los ejemplos se han comprobado en un navegador actual y en Node.js.