JavaScript
Métodos de arrays
---
Añadir elementos
Estos métodos sirven para **insertar nuevos elementos** en un array, ya sea al inicio o al final, modificando el array original.
--
PUSH
: Agregar al final
El método `.push()` agrega un nuevo elemento al final del arreglo y modifica el original. ### Ejemplo
```javascript run const heroesDC = ["batgirl", "green arrow"]; console.log(heroesDC); heroesDC.push("catwoman", "shazam"); console.log(heroesDC); ```
En el ejemplo agregamos nuevos héroes al final del arreglo usando con
.push()
.
UNSHIFT
ELIMINAR
--
UNSHIFT
: Agregar al inicio
El método `.unshift()` agrega uno o más elementos al inicio del arreglo y modifica el original. ### Ejemplo
```javascript run const equipo = ["Messi", "Suárez"]; console.log(equipo); equipo.unshift("Neymar", "Iniesta"); console.log(equipo); ```
En el ejemplo agregamos nuevos jugadores al inicio del equipo usando
.unshift()
.
PUSH
ELIMINAR
---
Eliminar elementos
Se utilizan para __remover elementos existentes__, ya sea al inicio, final o en posiciones específicas.
--
POP
: Eliminar el último
El método `.pop()` elimina el último elemento del arreglo y modifica el original. ### Ejemplo
```javascript run const equipo = ["Messi", "Suárez", "Neymar"]; console.log(equipo); equipo.pop(); console.log(equipo); ```
En el siguiente ejemplo eliminaremos el último jugador del equipo usando
.pop()
.
SHIFT
FILTRAR Y BUSCAR
--
SHIFT
: Eliminar el primero
El método `.shift()` elimina el primer elemento del arreglo y desplaza los demás elementos hacia atrás. ### Ejemplo
```js run const tareas = ["Despertar", "Desayunar", "Estudiar", "Dormir"]; console.log(Object.entries(tareas)); tareas.shift(); console.log(Object.entries(tareas)); ```
En el siguiente ejemplo eliminaremos la primera tarea del arreglo y veremos cómo cambian sus índices.
POP
FILTRAR Y BUSCAR
---
Filtrar y buscar
Permiten consultar información dentro del array sin modificarlo directamente o creando nuevos resultados.
--
INCLUDES
: Verificar existencia
El método `.includes()` verifica si un valor existe dentro de un arreglo o una cadena de texto, devolviendo
true
si lo encuentra y
false
si no está presente. ### Ejemplo
```js run const frutas = ["manzana", "plátano", "naranja"]; const existePlatano = frutas.includes("plátano"); const existeUva = frutas.includes("uva"); console.log(existePlatano); console.log(existeUva); ```
En el siguiente ejemplo comprobamos si una fruta está dentro del arreglo usando
.includes()
.
INDEXOF
FILTRAR Y BUSCAR
--
INDEXOF
: Conocer la posición
El método `.indexOf()` devuelve la posición ( índice ) de la primera aparición de un elemento dentro de un arreglo o cadena de texto, o `-1` si no lo encuentra. ### Ejemplo
```javascript run const equipos = ["Colo Colo", "U de Chile", "Universidad Católica", "O'Higgins"]; console.log(equipos.indexOf("Universidad Católica")); console.log(equipos.indexOf("Palestino")); ```
En el siguiente ejemplo buscamos la posición de dos equipos dentro del arreglo usando
.indexOf()
y vemos el índice que devuelve en consola.
INCLUDES
FIND
TRANSFORMAR
--
FIND
: Buscar el primer match
El método `.find()` devuelve el primer elemento de un arreglo que cumpla con una condición, o `undefined` si no encuentra ninguno. ### Ejemplo
```javascript run const edades = [12, 18, 25, 17, 30]; const mayorEdad = edades.find(edad => edad >= 18); console.log(mayorEdad); ```
En el siguiente ejemplo buscamos el primer número que sea mayor o igual a 18 dentro del arreglo usando
.find()
y mostramos el resultado en consola.
INDEXOF
FILTER
TRANSFORMAR
--
FILTER
: Buscar todos los match
El método `.filter()` crea un nuevo arreglo con los elementos que cumplen una condición ### Ejemplo
```js run const numbers = [10, 20, 55.33, 23]; function numberIsEven(num) { return Math.round(num) % 2 === 0; } const pares = numbers.filter(numberIsEven); console.log(pares); ```
En el siguiente ejemplo usamos
.filter()
para obtener un nuevo arreglo con solo los números pares, redondeando cada valor antes de evaluarlo.
FIND
TRANSFORMAR
---
Transformar y recorrer
Estos métodos permiten recorrer los elementos de un array, transformarlos y generar nuevos arreglos o resultados mediante funciones de procesamiento.
--
MAP
: Crear un nuevo array
El método `.map()` crea un nuevo array aplicando una función a cada elemento del array original, transformando sus valores sin modificar el original. ### Ejemplo
```javascript run const nombresJedi = ["Anakin", "Luke", "Rey"]; // Crear un nuevo arreglo agregando un texto a cada nombre const mensajesJedi = nombresJedi.map((nombreJedi) => { return `${nombreJedi} usa la Fuerza`; }); // Mostrar el nuevo arreglo en la consola console.log(mensajesJedi); ```
En el ejemplo usamos un array de nombres y creamos uno nuevo usando
.map()
.
FOREACH
ORDENAR
--
FOREACH
: Recorrer un array
El método `.forEach()` recorre cada elemento de un arreglo y ejecuta una función para cada uno, sin crear un nuevo arreglo. ### Ejemplo
```javascript run const heroes = ["Iron Man", "Thor", "Hulk"]; // Recorrer cada elemento del arreglo heroes.forEach(hero => { console.log(hero); }); ```
En el ejemplo recorremos el array de héroes usando
.forEach()
y mostramos cada elemento en consola.
MAP
REDUCE
ORDENAR
--
REDUCE
: Reducir todo a un valor acumulado
El método `.reduce()` recorre un array y lo reduce a un solo valor acumulando resultados en cada iteración.
```javascript run const numeros = [10, 20, 30, 40]; const suma = numeros.reduce((acumulador, numero) => { return acumulador + numero; }, 0); console.log(suma); ```
En el siguiente ejemplo sumamos todos los números de un arreglo usando `.reduce()` y mostramos el resultado en consola.
FOREACH
ORDENAR
--- #
Ordenar --- # Sort El método `.sort()` se utiliza para ordenar los elementos de un arreglo, ya sea en orden alfabético o numérico, modificando el arreglo original según una función de comparación o el orden Unicode por defecto.
-- ## Ordenar de mayor a menor En el siguiente ejemplo ordenamos un arreglo de números de mayor a menor usando `.sort()` y mostramos el resultado en consola. ```javascript const numeros = [5, 120, 12, 1, 45]; numeros.sort((a, b) => b - a); console.log(numeros); ```