La décomposition (destructuration) extrait des valeurs d'un objet ou d'un tableau dans des variables en une seule instruction. L'opérateur spread ... étale les éléments d'un itérable ou les propriétés d'un objet, et le reste (...reste) les regroupe. Ils simplifient copies, fusions et paramètres.
Exemple
const { nom, age } = user
const [premier, ...autres] = liste
const tous = [...a, ...b]