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, страна: «Индия»}