Capítulo 5: Spread Operator y Desestructuración de Objetos
El spread operator y la desestructuración también funcionan con objetos, permitiendo manipulaciones sofisticadas de datos estructurados.
5.1. Spread Operator (...) en Objetos
let persona = { nombre: "Juan", edad: 30 };
// Expandir propiedades
let persona2 = { ...persona };
console.log(persona2); // { nombre: "Juan", edad: 30 }
// Agregar propiedades
let personaCompleta = {
...persona,
ciudad: "Madrid",
profesion: "Desarrollador"
};
console.log(personaCompleta);
// {nombre: "Juan", edad: 30, ciudad: "Madrid", profesion: "Desarrollador"}
// Sobrescribir propiedades
let personaActualizada = {
...persona,
edad: 31 // Sobrescribe edad
};
console.log(personaActualizada); // {nombre: "Juan", edad: 31}5.2. Copiar Objetos: Spread vs Object.assign()
Object.assign()5.3. Fusionar Objetos
5.4. Desestructuración de Objetos
5.5. Renombrar Propiedades
5.6. Valores por Defecto
5.7. Rest Properties
5.8. Desestructuración Anidada
Resumen del Capítulo
El spread operator y la desestructuración de objetos permiten manipulaciones elegantes y concisas. Combinados con los métodos vistos para arrays, representan las herramientas modernas de JavaScript.
💡 Conceptos Clave:
Spread operator (...): Expande propiedades en nuevo objeto
Copiar objetos:
{...obj}crea copia superficialFusionar objetos:
{...obj1, ...obj2}Desestructuración: Extrae propiedades en variables
Renombrar:
{prop: nueva_variable}Valores por defecto: En desestructuración
Rest properties:
{a, b, ...resto}Anidación: Desestructuración de propiedades anidadas
🤔 Preguntas de Reflexión:
¿Cuál es la diferencia entre spread operator y Object.assign()?
¿Cómo renombramos propiedades en la desestructuración?
¿Qué son las rest properties y cuándo las usarías?
¿Cómo la desestructuración anidada ayuda a limpiar el código?
Demuestra cómo fusionar dos objetos manteniendo valores existentes.
Última actualización
¿Te fue útil?