ECMAScript 2024 aprobado: ¿qué hay de nuevo?
(2ality.com)Agrupación de iterables síncronos
Map.groupBy()agrupa los elementos de un iterable en entradas de unMapcon las claves proporcionadas por el callbackObject.groupBy()crea un objeto en lugar de unMap
Promise.withResolvers()
- Proporciona una nueva forma de crear una
Promiseque se quiere resolver
Flag de expresiones regulares /v
- El nuevo flag de expresiones regulares
/v(.unicodeSets) habilita las siguientes funciones:- escapes para propiedades de cadenas Unicode (la propiedad de punto de código Unicode
Emojimediante/uy la nueva propiedad de cadena UnicodeRGI_Emojimediante/v) - literales de cadena dentro de clases de caracteres mediante
\q{} - operaciones de conjuntos para clases de caracteres
- coincidencia mejorada con
/icuando los escapes de propiedades Unicode se niegan mediante[^···]
- escapes para propiedades de cadenas Unicode (la propiedad de punto de código Unicode
Nuevas funciones para ArrayBuffer y SharedArrayBuffer
ArrayBuffer:- se puede redimensionar directamente
- se agrega el método
.transfer()para transferencia
SharedArrayBuffer:- puede aumentar de tamaño, pero no reducirse
- no se puede transferir, por lo que no tiene el método
.transfer()que sí tienen losArrayBuffer
Verificar si una cadena está well-formed
- Dos nuevos métodos permiten verificar si una cadena está bien formada (UTF-16):
- el método de
String.isWellFormed()comprueba si una cadena de JavaScript está bien formada y no contiene un surrogate aislado - el método de
String.toWellFormed()devuelve una copia del receptor en la que cada surrogate aislado se reemplaza por la unidad de código 0xFFFD (que representa el punto de código del mismo número llamado "carácter de reemplazo"), por lo que el resultado queda bien formado
- el método de
Atomics.waitAsync()
Atomics.waitAsync()permite esperar cambios en memoria compartida de forma asíncrona
Libro gratuito sobre ECMAScript 2024
- "Exploring JavaScript (ES2024 Edition)" se puede leer gratis en línea. Dos capítulos especialmente relevantes:
- "History and evolution of JavaScript": ECMAScript vs. JavaScript, TC39, el proceso de TC39, propuestas de ECMAScript, etc.
- "New JavaScript features": ¿cuáles son las nuevas funciones de cada versión de ECMAScript?
Aún no hay comentarios.