Métodos básicos de iteración
for
var numeros = [5, 8, 12, 3];
for (var i = 0; i < numeros.length; i++) {
console.log(numeros[i]);
}
Permite iterar arrays, cadenas y objetos similraes. El índice i accede directamente a los elementos.
for...of
for (var valor of numeros) {
console.log(valor);
}
Obtiene directamente los valores del array. Soporta break, continue y return.
for...in
for (var indice in numeros) {
console.log(indice); // 0, 1, 2, 3
}
Devuelve índices como cadenas. No es recomendado para arrays por posibles problemas de enumeración.
Operaciones básicas en arrays
push()
var nuevoLength = numeros.push(15);
console.log(nuevoLength); // 5
Agrega elementos al final y devuelve la nueva longitud.
pop()
var ultimo = numeros.pop();
console.log(ultimo); // 15
Elimina y devuelve el último elemento.
unshift()
var nuevaLongitud = numeros.unshift(1);
console.log(nuevaLongitud); // 4
Agrega elementos al inicio y devuelve la nueva longitud.
shift()
var primer = numeros.shift();
console.log(primer); // 1
Elimina y devuelve el primer elemento.
splice()
var arrayOriginal = [1, 2, 3, 4, 5];
var eliminados = arrayOriginal.splice(1, 2, 10, 20);
console.log(arrayOriginal); // [1, 10, 20, 4, 5]
console.log(eliminados); // [2, 3]
Modifica el array original insertando, eliminando o reemplazando elementos.
concat()
var parte1 = [1, 2];
var parte2 = [3, 4];
var combinado = parte1.concat(parte2);
console.log(combinado); // [1, 2, 3, 4]
Combina arrays sin modificar los originales.
join()
var texto = numeros.join('-');
console.log(texto); // "5-8-12-3"
Convierte elementos a cadena unidos por un separador.
slice()
var porcion = numeros.slice(1, 3);
console.log(porcion); // [8, 12]
Devuelve una copia superficial de una sección del array.
includes()
var tieneOcho = numeros.includes(8);
console.log(tieneOcho); // true
Verifica si un elemento existe en el array.
indexOf()
var posicion = numeros.indexOf(12);
console.log(posicion); // 2
Devuelve el primer índice de coincidencia o -1 si no encuentra.
fill()
var relleno = new Array(3).fill('X');
console.log(relleno); // ["X", "X", "X"]
Rellena un array con valores estáticos.
Métodos avanzados de ES6
forEach()
numeros.forEach((num) => {
if (num > 10) console.log(num);
});
Ejecuta una función para cada elemento. No devuelve valor.
filter()
var filtrados = numeros.filter(num => num % 2 === 0);
console.log(filtrados); // [8, 12]
Devuelve un nuevo array con elementos que cumplen una condición.
map()
var transformados = numeros.map(num => num * 2);
console.log(transformados); // [10, 16, 24, 6]
Transforma cada elemento y devuelve un nuevo array.
find()
var personas = [
{nombre: 'Ana', edad: 25},
{nombre: 'Luis', edad: 30}
];
var adulto = personas.find(p => p.edad > 28);
console.log(adulto); // {nombre: 'Luis', edad: 30}
Devuelve el primer elemento que cumple una condición.
findIndex()
var indice = personas.findIndex(p => p.nombre === 'Ana');
console.log(indice); // 0
Devuelve el índice del primer elemento que cumple una condición.