JavaScript ES6 (ECMAScript 6) представил оператор распространения. Синтаксис: три точки(…), за которыми следует массив (или итерируемый). Он расширяет массив на отдельные элементы. Таким образом, его можно использовать для расширения массива в местах, где ожидается ноль или более элементов.

1. Копирование массива

let fruit = [‘Яблоко’, ‘Апельсин’, ‘Банан’];

let newFruitArray = […плоды];

console.log(newFruitArray);

//Вывод:

// ['Яблоко', 'Апельсин', 'Банан']

2. Объединение массивов

пусть arr1 = [‘A’, ‘B’, ‘C’];

пусть arr2 = [‘X’, ‘Y’, ‘Z’];

пусть результат = […arr1, …arr2];

console.log(результат);

//Вывод:

// [‘A’, ‘B’, ‘C’, ‘X’, ‘Y’, ‘Z’]

3. Распространение элементов вместе с отдельным элементом

let fruit = ['Яблоко','Апельсин','Банан'];

let newFruits = [‘Cherry’, …names];

console.log(newFruits);

//Вывод:

// ['Вишня', 'Яблоко', 'Апельсин', 'Банан']

4. Распространение элементов при вызовах функций

let Fruits = ['Яблоко','Апельсин','Банан'];

var getFruits = (f1, f2, f3) =› {

console.log(`Фрукты: ${f1} , ${f2} , ${f3} ` );

};

получитьфрукты(…фрукты);

//Вывод:

// ‘Фрукты: яблоко, апельсин, банан’

5. Расширенный синтаксис для литералов объектов

переменная obj1 = {

id: 101,

имя: 'Субу звезда'

}

переменная obj2 = {

возраст: 22,

страна: «Индия»

}

const employee = { …obj1, …obj2 } //конкатенация объектов

console.log(сотрудник);

//Вывод

//{ id: 101, имя: «subu star», возраст: 22, страна: «Индия»}