Chuleta de métodos de arrays en JavaScript (en vivo)

Chuleta de métodos de arrays en JavaScript

Chuleta de métodos de arrays en JavaScript (ejecuta cada uno en vivo) | We.Inc

Escribe tu propia lista y mira cómo map, filter, reduce, find, sort, splice y 30 métodos más se ejecutan sobre ella, con una marca clara en cada método que cambia el array original.

Los métodos de arrays se dividen en dos grupos. Unos cambian el array sobre el que los llamas, como push, pop, splice, sort y reverse. Otros devuelven un array o un valor nuevo y dejan intacto el original, como map, filter, slice, toSorted y reduce. Edita la lista de abajo y cada método se vuelve a ejecutar con tus valores.

Tareas habituales con arrays y el método para cada una

La mayoría de las chuletas listan los nombres de los métodos con un ejemplo prefabricado. Aquí los ejemplos se ejecutan sobre una lista que controlas tú, así que puedes ver qué pasa con duplicados, con una lista vacía o con un solo elemento. Cada fila lleva una etiqueta para que sepas de un vistazo si un método reescribe tus datos, que es el origen de muchos bugs de estado en React y librerías parecidas.

Preguntas frecuentes

¿Cómo obtengo la longitud de un array en JavaScript?

Lee arr.length. Es una propiedad, no un método, así que no lleva paréntesis. Vale uno más que el índice más alto, lo que equivale al número de elementos en los arrays normales. Asignar arr.length = 0 vacía el array, y asignar un número menor corta elementos del final.

¿Qué diferencia hay entre map y forEach?

map crea un array nuevo con lo que tu función devuelve para cada elemento, así que puedes asignarlo o encadenar más métodos. forEach solo invoca tu función y devuelve undefined. Usa map cuando quieras un resultado y forEach solo para efectos secundarios como escribir logs.

¿Qué métodos de arrays mutan el array original?

push, pop, shift, unshift, splice, sort, reverse, fill y copyWithin cambian el array en el sitio. Asignar length o un índice directamente también lo hace. Todo lo demás de esta chuleta lo deja intacto.

¿Cómo elimino un elemento de un array sin modificarlo?

Usa filter para quitarlo por valor, por ejemplo arr.filter((x) => x !== 'kiwi'), o toSpliced(index, 1) para quitarlo por posición. Ambos devuelven un array nuevo y dejan el original como estaba.

¿Por qué map devuelve valores undefined?

Tu callback no devolvió nada. Una función flecha con llaves necesita un return explícito; escribe (x) => x * 2 o (x) => { return x * 2; }. Si falta el return, esa posición queda en undefined.

Leer una cadena de izquierda a derecha

Los métodos de búsqueda devuelven cosas distintas

Métodos que mutan y sus equivalentes que copian

Cuando no debas tocar el original, por ejemplo el estado de React o el argumento de una función, cambia la columna izquierda por la derecha.

En el sitio frente a copia

Encadenar map, filter y reduce

Total de los pedidos pagados en una sola cadena

Cada paso devuelve un array nuevo, así que el siguiente método se ejecuta sobre él. La lista original de pedidos nunca cambia.

Leer y asignar length

length es una propiedad normal. Reducirla elimina elementos del final, por eso cuenta como un cambio en el array.

Actualizar el estado de React sin mutar

Los métodos que copian le dan a React un array nuevo, así que el componente se vuelve a renderizar. Llamar a sort o push sobre el array del estado no lo haría.

Todos

Leer

Buscar

Transformar

Ordenar

Añadir y quitar

Iterar

Chuleta de métodos de arrays en vivo

Escribe una lista separada por comas y cada método de abajo se ejecuta sobre ella mientras editas.

Tu lista (arr)

Filtrar métodos

por ejemplo find o sort

Grupo de métodos

Todos los métodos de esta chuleta

{n} mostrados

Llamada

Grupo

¿Cambia el original?

Qué hace

Resultado

Sí

No

Error: {v}

Empieza gratis · Sin tarjeta de crédito

Relacionado: Guías

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio