Добавление элементов в массив

Добавление элементов в начало массива, конец, середину, по индексу и объединение массивов

Добавление элемента в начало массива

Метод unshift() добавляет один или несколько элементов в начало массива и также возвращает новую длину массива. Он изменяет исходный массив.

let arr = [2, 3, 4];
let newLength = arr.unshift(0, 1); 
console.log(arr); // [0, 1, 2, 3, 4]
console.log(newLength); // 5

Добавление элемента в конец массива

Метод push() используется для добавления одного или нескольких элементов в конец массива. Этот метод изменяет исходный массив и возвращает новую длину массива.

let arr = [1, 2, 3];
let newLength = arr.push(4, 5); 
console.log(arr); // [1, 2, 3, 4, 5]
console.log(newLength); // 5

Добавление элемента в произвольное место массива

Метод splice() универсален и позволяет добавлять, удалять или заменять элементы в массиве. Синтаксис выглядит так:

array.splice(индекс, количество_удаляемых_элементов, элементы_для_добавления);

Например добавим новый элемент в середину массива. Мы начали с индекса 2, удалим 0 элементов и добавим значение 3:

let arr = [1, 2, 4];
arr.splice(2, 0, 3); 
console.log(arr); // [1, 2, 3, 4]

Вы также можете добавить элемент в массив, просто присвоив значение индексу. Если индекс выходит за пределы текущей длины массива, массив автоматически расширится.

let arr = [1, 2, 3];
arr[3] = 4; 
console.log(arr); // [1, 2, 3, 4]

Пример добавления элемента далеко за границей текущей длины:

let arr = [1, 2];
arr[5] = 3;
console.log(arr); // [1, 2, undefined, undefined, undefined, 3]

Добавить один массив в другой

С помощью оператора “spread” можно легко создать новый массив, распаковав элементы существующего массива и добавив новые элементы. Этот метод не изменяет исходный массив.

let arr = [1, 2, 3];
let newArr = [...arr, 4, 5]; 
console.log(newArr); // [1, 2, 3, 4, 5]

Или можно использовать метод concat(), который объединяет массивы и элементы, возвращая новый массив. Он не изменяет исходные массивы.

let arr1 = [1, 2];
let arr2 = [3, 4];
let newArr = arr1.concat(arr2, 5);
console.log(newArr); // [1, 2, 3, 4, 5]