CodeForge

JavaScript de Cero a Experto / Arrays

some, every, includes, sort e inmutabilidad

Teoría22 min20 XP

Cerramos el arsenal de arrays con los métodos que PREGUNTAN (some, every, includes) y el que ORDENA (sort) —con su trampa clásica— y una idea que define el JavaScript moderno: la INMUTABILIDAD, con toSorted y toReversed, las versiones que ordenan sin destruir tu lista original.

Preguntas sobre la lista: some, every, includes

some (¿alguno?), every (¿todos?) e includes (¿está este valor?) devuelven un boolean, ideales para decisiones: "¿hay algún gasto sospechoso?" (some), "¿todos los campos están llenos?" (every), "¿la lista contiene este ID?" (includes).

sort y su trampa con números

sort ordena... pero por defecto ordena como TEXTO, lo que rompe los números:

Dos cosas cruciales de sort: por defecto ordena como TEXTO ("100" antes que "9"), así que para números SIEMPRE pásale la función `(a, b) => a

  • b(ascendente) o(a, b) => b - a (descendente). Y **sortMUTA el original** (lo reordena en su lugar) — por eso arriba usamos[...nums]para sortear una COPIA (los...` copian el array; lo verás a fondo en el módulo 5).

Inmutabilidad: toSorted y toReversed

Ordenas const precios = [100, 25, 9] con precios.sort() (sin función). ¿Qué obtienes y por qué?

Mini-reto

En "Mi Bolsillo": con un array de gastos, responde con booleanos: ¿hay algún gasto mayor a tu límite? (some), ¿todos son positivos? (every), ¿gastaste exactamente 18000 alguna vez? (includes). Luego crea una versión ORDENADA de mayor a menor con toSorted((a, b) => b - a) y confirma que el array original sigue en su orden. Elegir inmutable por defecto es un hábito profesional que empiezas hoy.

Qué sigue

Módulo 4 cerrado: dominas los arrays y su arsenal de métodos —el pan de cada día de JavaScript—. El reto del módulo los junta todos en un mini-programa de análisis de gastos de "Mi Bolsillo": filtrar, transformar, acumular y ordenar datos reales. Tu primer programa que "analiza" una colección.