Изучение общих случаев использования синтаксиса JavaScript Spread (…)

Изучение общих случаев использования синтаксиса JavaScript Spread (…)

22 февраля 2023 г.

Оператор расширения Javascript позволяет расширять массив, строку или другой итерируемый объект в местах с нулем или более аргументов (для вызовов функций) или элементов. Синтаксис для этого три точки (…)

В этой статье я объясню варианты использования оператора распространения в JavaScript, так что давайте сразу к нему.

Случаи использования

Добавление элементов существующего массива в новый массив

let newarr = ["Red", "Yellow"];
let otherarr = ["Blue", ...newarr, "Green"] 
console.log(otherarr); // ["Blue", "Red", "Yellow", "Green"];

Итак, давайте объясним, что здесь происходит, newarr — это массив, содержащий две строки Red и Yellow, тогда второй массив otherarr содержит две строки и новый. Обычно, когда мы добавляем этот массив без оператора трех периодов, он добавляет новый массив в другой массив. Но поскольку у нас есть оператор распространения, он добавит элемент массива в другой массив.

Вы можете передавать элементы массива в качестве аргументов функции

function addThreeNumbers(x,y,z){
   return x+y+z;
}
let args = [1,2,3];
addThreeNumbers(...args); // 6

Другой вариант использования заключается в том, что вы можете передать элемент массива как функцию. в приведенном выше примере у нас есть функция addThreeNumbers с тремя параметрами x,y,z, которые возвращают сумму этих трех чисел. Теперь у нас есть массив с тремя значениями 1,2,3. В обычном состоянии мы можем передать функции три аргумента, но с помощью оператора расширения мы просто передаем массив с помощью оператора с тремя точками (…), который будет распространять массив на каждый элемент функции.

Примечание. Если у нас есть четвертый элемент в массиве, он будет игнорировать четвертый элемент в массиве, как в примере ниже.

 function addThreeNumbers(x,y,z){
   return x+y+z;
}
let args = [1,2,3,4];
addThreeNumbers(...args); // 6

.

Копировать массивы

let arr1 = [1,2,3];
let arr2 = [...arr1]

Если у нас есть arr1, мы можем использовать оператор распространения, чтобы скопировать массив во второй массив.

Объединить массив

let arr1 = [1,2,3];
let arr2 = [5,6,7];
arr1.concat(arr2); // [1,2,3,5,6,7]
arr1 = [...arr1 ...arr2]; // [1,2,3,5,6,7]

Еще один вариант использования — мы можем объединять массивы вместе, как обычно мы это делаем, используя метод concat для объединения массивов. С помощью оператора расширения мы также можем объединять массивы.


Справочник

Также опубликовано здесь.

Ведущий образ создан со стабильной диффузией.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE