ES10: Novedades

Hace más de dos meses, vimos las novedades que introdujo la versión ES9. En este post, veremos las novedades que introduce la última versión hasta ahora que es la versión ES10 o ES2019.

Array.flat() y Array.flatMap()

El método .flat() lo que nos permite es que crear un nuevo array con todos los elementos de los sub-arrays que contenga según la profundidad que le indiquemos por parámetro.

 

El método .flatMap() es una combinación de los métodos .map() y .flat(). Recorre los elementos del array como hace el método .map() y después aplica un .flat() con profundidad de 1 a cada elemento recorrido.

En los ejemplos, estamos metiendo los elementos en un array, pero cuando lo mostramos, los elementos están todos al mismo nivel, no hay arrays. Esto es porque ha aplicado el método .flat() a cada elemento conforme los va recorriendo.

 

String.trimStart() y String.trimEnd()

El método .trimStart() limpia los espacios que haya al principio de una cadena de texto.

 

El método .trimEnd() limpia los espacios que haya al final de una cadena de texto.

 

Object.fromEntries()

El método .fromEntries() nos permite crear un objeto a partir de un array tipo [[key, value]]. En ES8 vimos el método .entries() que lo que hace es tranformar un objeto en un array [[key, value], …]. Por tanto, podríamos decir que el método .fromEntries() es la operación inversa del método .entries().

 

Parámetro error opcional en try-catch

A partir de la ES10 será opcional poner el parámetro de error en el catch. Por tanto, una sintaxi como ésta será válida:

 

Function.toString()

El método .toString() devuelve una representación de la función en formato cadena de texto, es decir, nos devuelve el código de la función en un string.

-


Aloja tu proyecto en DigitalOcean: Obtén $200 de crédito gratis al registrarte a través de este enlace.

Si hay cualquier tipo de error en el post o te surge cualquier duda, no dudes en ponerlo en los comentarios o enviarme un correo desde la página de contacto.

? CONTACTAR

Deja una respuesta

  Acepto la política de privacidad