Spread em objetos
No código real, você frequentemente precisa criar cópias de objetos ou combinar dados de diferentes fontes sem mutar o original. O spread (...) é a forma mais concisa e legível de fazer isso — usado em frameworks como React para atualizar estado, em configurações que mesclam defaults com opções do usuário, ou para evitar efeitos colaterais ao manipular dados.
O PROBLEMA
Use spread para copiar, combinar e sobrescrever propriedades de objetos.
EXEMPLO
const copia = {...original};
const merged = {...obj1, ...obj2};
const atualizado = {...usuario, idade: 26}SOBRE O CONCEITO
O operador spread (...) dentro de um objeto literal ({}) copia as propriedades próprias enumeráveis de um ou mais objetos de origem para um novo objeto. Exemplo: const copia = {...original}. Isso é uma cópia rasa: para valores primitivos (strings, números, booleanos), o valor é copiado; para objetos ou arrays aninhados, apenas a referência é copiada. O erro comum é achar que o spread faz uma cópia profunda — se você modificar um objeto dentro da cópia, o original também será afetado. Para sobrescrever propriedades, basta colocar o novo valor depois do spread: {...obj, chave: novoValor}. Combine objetos com {...obj1, ...obj2} — propriedades de obj2 sobrescrevem as de obj1 em caso de conflito.
RESOLUÇÃO