ECMAScript 2025 es la 16ª versión del estándar para JavaScript, introduce novedades como mejoras en la gestión de fechas, nuevas estructuras de datos y optimizaciones de rendimiento. También se incluyen funcionalidades como módulos JSON, capacidades de expresiones regulares mejoradas, métodos de conjuntos (Set) y métodos de iteradores sincrónicos. Estas mejoras están diseñadas para hacer el código más eficiente, legible y potente.
Es por ello que en este artículo repasamos las novedades más destacadas y cómo pueden mejorar tu flujo de trabajo.
1. El nuevo objeto Iterator
Sin duda, una de las incorporaciones más relevantes: un objeto global Iterator con métodos funcionales (map, filter, take, etc.) que permiten manipular colecciones de forma perezosa (lazy loading).
Esto representa una alternativa más eficiente frente al clásico Array.map() o Array.filter(), que crean arrays intermedios en cada operación. En cambio, Iterator evalúa cada elemento solo cuando se necesita, mejorando el rendimiento en colecciones grandes o flujos de datos.

Lo más interesante es que esta API también se puede aplicar a generadores personalizados:

2. Nuevos métodos en Set
JavaScript amplía finalmente las capacidades de Set con operaciones inspiradas en teoría de conjuntos:
- intersection() — elementos comunes.
- difference() — elementos en el primer conjunto pero no en el segundo.
- symmetricDifference() — elementos exclusivos de ambos conjuntos.
Ejemplo:

También se agregan métodos para relaciones entre conjuntos:
- isSubsetOf()
- isSupersetOf()
- isDisjointFrom()
3. Importación directa de JSON como módulo
Ahora puedes importar archivos .json directamente como módulos con soporte nativo:

Este cambio evita hacks con fetch() o configuraciones de bundlers, simplificando el acceso a configuraciones y datos estructurados en tiempo de ejecución. Solo funciona con archivos locales, no URLs remotas.
4. Mejoras en expresiones regulares
También introduce dos mejoras clave en regex:
RegExp.escape()
Escapa automáticamente caracteres especiales, útil para prevenir inyecciones cuando usas entradas del usuario:

Modificadores inline
Permiten aplicar o desactivar flags como i (insensitive) a secciones específicas:

Esto permite, por ejemplo, buscar "love" sin importar mayúsculas, pero exigir que "Day" coincida exactamente.
5. Promise.try: promesas más seguras
Este nuevo método permite envolver funciones que pueden o no devolver una promesa, capturando errores sin necesidad de bloques try/catch separados.

Es especialmente útil cuando tienes funciones que a veces retornan valores simples y otras veces promesas. Todo se convierte en una cadena de promis segura.
6. Float16Array: rendimiento para cálculos intensivos
Se añade un nuevo tipo Float16Array, ideal para casos como machine learning donde se manejan grandes volúmenes de datos con menor precisión.
También se incorporan:
- DataView.prototype.getFloat16()
- DataView.prototype.setFloat16()
- Math.f16round() (para redondear números en este formato)
Esto no cambia el tipo Number en JavaScript (que sigue siendo 64-bit), pero permite trabajar con buffers binarios optimizados.
Conclusión
ECMAScript 2025 no busca reinventar el lenguaje, pero sí refinarlo con herramientas pensadas para desarrolladores reales, más expresividad, mejor rendimiento, y menos necesidad de soluciones externas.
La introducción de Iterator abre la puerta a paradigmas más funcionales y eficientes. Las nuevas operaciones de conjuntos y mejoras en promesas y expresiones regulares modernizan tareas que antes requerían librerías auxiliares.
Y aunque algunas funciones puedan parecer pequeñas, en conjunto representan una evolución firme y pensada hacia un JavaScript más poderoso, predecible y moderno.