L’opérateur spread, également connu sous le nom de l’opérateur de décomposition, est une fonctionnalité de JavaScript introduite avec ES6 (ES2015) qui permet à un itérable (comme un tableau ou une chaîne de caractères) de se décomposer en éléments individuels.
Il est largement utilisé dans plusieurs situations, par exemple pour concaténer des tableaux, cloner des tableaux, travailler avec des fonctions qui prennent un nombre variable d’arguments, et dans des expressions d’objet littéral pour insérer les paires clé-valeur d’un autre objet.
Syntaxe :
1. Pour les tableaux:
let arr1 = [‘a’, ‘b’, ‘c’];
let arr2 = […arr1, ‘d’, ‘e’]; // [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
1. Pour les objets:
let obj1 = { a: 1, b: 2 };
let obj2 = { …obj1, c: 3 }; // { a: 1, b: 2, c: 3 }
1. Dans l’appel de fonction:
function example(x, y, z) { }
let args = [1,2,3];
example(…args);
Notez que dans le cas des objets, il ne crée pas une copie profonde. Si l’objet original a des propriétés qui sont également des objets, ils seront passés par référence, pas cloné.