Contenido del curso
Configuracion
¿Qué se implementó en ES6?
- 4

let, const y arrow functions en ES6
15:29 min - 5

Template literals en JavaScript ES6
08:11 min - 6

Parámetros por defecto en funciones ES6
05:46 min - 7

Desestructuración de arrays y objetos en JavaScript
05:33 min - 8

Spread y rest parameters en JavaScript
07:30 min - 9

Playground: Combina objetos JSON con el Spread Operator
- 10

Object literals abreviados en ES6
05:42 min - 11

Promesas en JavaScript con resolve y reject
08:09 min - 12

Clases en JavaScript con getters y setters
18:54 min - 13

Módulos en JavaScript con import y export
09:48 min - 14

Playground: Obtén una lista de películas
- 15

Generators en JavaScript: control del estado
07:19 min - 16

Playground: Generador de identificadores para michis
- 17

Método add() y encadenamiento en Sets JS
04:36 min
¿Qué se implementó en ES7?
¿Qué se implementó en ES8?
¿Qué se implementó en ES9?
¿Qué se implementó en ES10?
¿Qué se implementó en ES11?
¿Qué se implementó en ES12?
¿Qué se implementó en ES13?
Recapitulación
Regex y spread operator en ES9
Resumen
ECMAScript 9, lanzado en junio de 2018, sumó mejoras que cambian la forma en que trabajas con expresiones regulares y objetos en JavaScript. Si quieres entender cómo capturar grupos en un regex y cómo usar el spread operator con objetos, esta guía es para ti.
Qué aporta ECMAScript 9 al desarrollo en JavaScript
Cada año, JavaScript suma características que hacen el lenguaje más expresivo y manejable. La versión ES9 trae dos protagonistas que vale la pena dominar: la captura de grupos en expresiones regulares y la extensión del operador de propagación a objetos.
¿Cuándo salió ECMAScript 9? En junio de 2018, como una de las actualizaciones anuales del estándar de JavaScript.
Cómo funciona la captura de grupos en regex con ES9
Las expresiones regulares ya permitían validar cadenas, pero ES9 mejora cómo accedes a los fragmentos que coinciden con cada parte del patrón. Ahora puedes capturar valores en grupos y trabajarlos por separado.
Imagina que tienes un regex para validar fechas con formato cuatro dígitos para el año, dos para el mes y dos para el día, separados por guiones. Con ES9 puedes ejecutar ese patrón sobre un string como '2022-01-01' y recuperar cada fragmento de forma estructurada [01:50].
javascript const regex = /([0-9]{4})-([0-9]{2})-([0-9]{2})/; const match = regex.exec('2022-01-01'); console.table(match);
Al ejecutar exec, obtienes el match completo y cada grupo capturado por separado. Y aquí viene un truco útil: en lugar de console.log, usa console.table para visualizar el resultado como tabla en consola, con índice, input y los grupos detectados [02:55].
Por qué importa capturar grupos
Capturar grupos te permite extraer datos puntuales sin recorrer el string manualmente. Es ideal cuando trabajas con fechas, identificadores o cualquier formato estructurado que necesites descomponer.
¿Qué hace
regex.exec()en JavaScript? Ejecuta el patrón sobre un string y devuelve un arreglo con la coincidencia completa y cada grupo capturado, más metadatos como el índice y el input original.
Cómo usar spread y rest con objetos en ECMAScript 9
Ya conocías el spread operator con arreglos. ES9 lo lleva al siguiente nivel: ahora puedes usar ... también con objetos para copiar y propagar sus claves [04:20].
Mira este ejemplo. Tienes un objeto user con tres propiedades:
javascript const user = { username: 'gndx', age: 34, country: 'CO' };
Con ES9 puedes extraer una propiedad específica y mandar el resto a otra variable usando rest:
javascript const { username, ...values } = user; console.log(username); // 'gndx' console.log(values); // { age: 34, country: 'CO' }
Aquí, username queda aislado y todo lo demás se propaga dentro de values. La sintaxis es la misma que ya usabas con arreglos, pero ahora aplicada a las claves de un objeto [05:40].
Cuándo conviene usar spread en objetos
Este patrón brilla cuando necesitas:
- Separar una propiedad concreta del resto de un objeto.
- Crear copias de objetos sin mutar el original.
- Combinar varios objetos en uno solo.
- Pasar props filtradas en frameworks como React.
¿Qué diferencia hay entre rest y spread en objetos? Rest recoge las propiedades restantes en una nueva variable durante la desestructuración. Spread expande las propiedades de un objeto dentro de otro al construirlo.
Qué habilidades refuerza ECMAScript 9 en tu código
Entender estas dos características te da herramientas concretas para escribir código más limpio:
- Manejo de expresiones regulares: validar formatos y extraer datos sin recorrer strings manualmente.
- Desestructuración avanzada: separar propiedades específicas y agrupar el resto con rest.
- Manipulación de objetos inmutable: crear copias y combinaciones sin alterar la referencia original.
- Depuración con
console.table: visualizar arreglos y objetos como tablas en consola para inspeccionar resultados rápido.
Dominar estos recursos te prepara para transformar datos, trabajar con APIs y mantener tu lógica organizada cuando los objetos crecen en complejidad.
¿Ya estás usando rest con objetos en tus proyectos? Cuéntame en los comentarios qué caso de uso te resultó más útil.