Saltar al contenido
Curso de JavaScript
Todos los cursos

JavaScript moderno: Intl, copias y groupBy

  • ⏱ 30 minutos
  • 📶 Nivel: intermedio
  • ⭐ Extra opcional (no cuenta para el progreso)

⚠️ Soporte

Todo lo de esta página está disponible en las versiones actuales de los navegadores principales y en Node LTS. Si apuntas a navegadores antiguos, consulta Can I use.

1.Intl: fechas, monedas y listas sin librerías

Intl formatea números, fechas y listas según el idioma. Para precios en soles usa Intl.NumberFormat con currency: "PEN".

▶ Formatos con Intl
Consola

💡 Consejo

Crea el formateador una vez y reutilízalo: es más rápido que llamar a toLocaleString() en cada iteración.

2.Arrays: toSorted, toReversed, with y toSpliced

Los métodos clásicos sort() y reverse() modifican el array original. Las versiones nuevas devuelven una copia y dejan el original intacto, clave en React y en cualquier código que evite mutaciones.

▶ Sin mutar el original
Consola

3.Agrupar: Object.groupBy y Map.groupBy

Agrupar elementos por una clave era un reduce largo. Ahora es una sola llamada.

▶ Agrupar productos por categoría
Consola

⚠️ Nota

Object.groupBy devuelve un objeto sin prototipo. Si necesitas claves que no sean texto, usa Map.groupBy.

📒 Apuntes para llevar

  • Intl.NumberFormat, DateTimeFormat, ListFormat y RelativeTimeFormat formatean según el idioma.
  • toSorted, toReversed, with y toSpliced no mutan el original.
  • Object.groupBy y Map.groupBy agrupan en una sola llamada.

🧠 Comprueba lo aprendido

Elige una respuesta en cada pregunta.

¿Qué diferencia hay entre sort() y toSorted()?

¿Cómo formateas un precio en soles?

¿Qué hace Object.groupBy(lista, fn)?