🟨Operador Spread

El operador spread (...) permite expandir elementos de un iterable (como un array o un objeto) en lugares donde se esperan múltiples argumentos (en llamadas a funciones) o elementos (en arrays) o pares clave-valor (en objetos).

🚀 Usos en Arrays

Combinar arrays:

const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
const combinado = [...array1, ...array2]; // [1, 2, 3, 4, 5, 6]

Copiar arrays:

const original = [1, 2, 3];
const copia = [...original]; // Crea una copia superficial de 'original'

🛠 Usos en Objetos

Combinar objetos:

const obj1 = { a: 1, b: 2 };
const obj2 = { b: 3, c: 4 };
const combinado = { ...obj1, ...obj2 }; // { a: 1, b: 3, c: 4 }
// Nota: Las propiedades se sobrescriben de izquierda a derecha.

Copiar objetos:

const original = { a: 1, b: 2 };
const copia = { ...original }; // Crea una copia superficial de 'original'

🎯 Usos en Funciones

Pasar elementos de un array como argumentos a una función:

function suma(x, y, z) {
  return x + y + z;
}
const numeros = [1, 2, 3];
const resultado = suma(...numeros); // Equivalente a suma(1, 2, 3)

⚠️ Consideraciones

  • El operador spread realiza una copia superficial. Esto significa que objetos o arrays anidados dentro de un objeto o array copiado no son duplicados, sino que se copian las referencias a ellos.

  • No se puede usar en contextos donde no se esperan múltiples valores, como en una asignación de variable simple.

Última actualización