Синтаксис Spread в массивах
Часть раздела Логика и поток путешествия по JavaScript на Coddy — урок 48 из 65.
Синтаксис расширения (...) позволяет итерируемому объекту, такому как массив, быть развернутым в местах, где ожидается ноль или более аргументов или элементов. Он предоставляет краткий способ выполнения таких операций, как объединение или копирование массивов.
Вот несколько распространенных вариантов использования:
1. Объединение массивов:
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const combined = [...arr1, ...arr2];
console.log(combined); // [1, 2, 3, 4, 5, 6]2. Создание поверхностной копии массива:
const original = [1, 2, 3];
const copy = [...original];
console.log(copy); // [1, 2, 3]3. Добавление элементов в массив:
const numbers = [1, 2, 3];
const moreNumbers = [0, ...numbers, 4];
console.log(moreNumbers); // [0, 1, 2, 3, 4]4. Передача элементов массива в качестве аргументов функции:
function sum(a, b, c) {
return a + b + c;
}
const numbers = [1, 2, 3];
console.log(sum(...numbers)); // 6Задание
ЛегкоСоздайте функцию с названием mergeArr, которая принимает два массива чисел в качестве аргументов. Функция должна:
- Объединить два массива, используя оператор расширения (spread operator)
- Удалить все дубликаты чисел
- Вернуть результирующий массив
Шпаргалка
Синтаксис расширения (...) позволяет итерируемому объекту расширяться там, где ожидается ноль или более аргументов или элементов.
Объединение массивов:
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const combined = [...arr1, ...arr2];
console.log(combined); // [1, 2, 3, 4, 5, 6]Создание поверхностной копии:
const original = [1, 2, 3];
const copy = [...original];
console.log(copy); // [1, 2, 3]Добавление элементов в массив:
const numbers = [1, 2, 3];
const moreNumbers = [0, ...numbers, 4];
console.log(moreNumbers); // [0, 1, 2, 3, 4]Передача элементов массива в качестве аргументов функции:
function sum(a, b, c) {
return a + b + c;
}
const numbers = [1, 2, 3];
console.log(sum(...numbers)); // 6Попробуйте сами
function mergeArr(arr1, arr2) {
// Напишите свой код здесь
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и поток
1Строки в деталях
Основы работы со строкамиИтерация по строкамШаблонные литералыМетоды строкИтоги — String Weaver4JSON Часть 2
Итерация по JSONВложенный JSONОпциональная цепочка JSONПоверхностное и глубокое копированиеПовторение — Магазин велосипедовПовторение — Солнечная система7Система управления библиотекой
Обзор проектаДобавление книг10Управление системой фестиваля
Обзор проектаДобавление фильмов и площадок2Многомерные массивы
Основы 2D массивовДоступ к элементам 2D массиваВложенные циклы и 2D массивыПовторение: 2D массивыСложение и вычитание матрицСтупенчатые массивы3D массивы и далееРаспространенные паттерны 2D массивовПовторение: всё о массивах5Множества. Часть 1
Что такое множество?Итерация по множествамДобавление элементаУдаление элементаПроверка наличия элементаРазмер и проверка на пустотуКопирование и очисткаИтоги — Основы множеств8Интересные темы о массивах
Деструктуризация массивовСинтаксис Spread в массивахРазреженные массивыИтоги — Воркшоп по массивам3JSON. Часть 1
Что такое JSON?Проверка наличия ключаМетоды объектовОператор spread. Часть 1Оператор spread. Часть 2Удаление ключейПовторение: манипуляции с ключами JSON