Методы массивов в JavaScript: список array methods в JS

Массивы в JavaScript — это один из самых часто используемых типов данных. Чтобы удобно работать с массивами, в языке есть большой набор встроенных методов, которые позволяют добавлять и удалять элементы, искать нужные значения, фильтровать данные, сортировать массивы, превращать их в строки и выполнять другие полезные операции.

Методы добавления и удаления элементов

push

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

const arr = [1, 2];
arr.push(3);
console.log(arr); // [1, 2, 3]

pop

Удаляет последний элемент массива и возвращает его.

const arr = [1, 2, 3];
arr.pop();
console.log(arr); // [1, 2]

unshift

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

const arr = [2, 3];
arr.unshift(1);
console.log(arr); // [1, 2, 3]

shift

Удаляет первый элемент массива и возвращает его.

const arr = [1, 2, 3];
arr.shift();
console.log(arr); // [2, 3]

splice

Добавляет, заменяет или удаляет элементы по индексу.

const arr = [1, 2, 3, 4];
arr.splice(2, 1, 'a', 'b');
console.log(arr); // [1, 2, 'a', 'b', 4]

concat

Объединяет два или больше массивов в новый массив.

const arr1 = [1, 2];
const arr2 = [3, 4];
const result = arr1.concat(arr2);
console.log(result); // [1, 2, 3, 4]

Методы поиска элементов

indexOf

Возвращает индекс первого найденного элемента.

console.log([1, 2, 3, 2].indexOf(2)); // 1

lastIndexOf

Возвращает индекс последнего найденного элемента.

console.log([1, 2, 3, 2].lastIndexOf(2)); // 3

includes

Проверяет наличие элемента в массиве.

console.log([1, 2, 3].includes(2)); // true

find

Возвращает первый элемент, подходящий под условие.

const arr = [{id: 1}, {id: 2}];
console.log(arr.find(item => item.id === 2)); // {id: 2}

findIndex

Возвращает индекс первого элемента, подходящего под условие.

console.log(arr.findIndex(item => item.id === 2)); // 1

Методы перебора элементов

forEach

Выполняет функцию для каждого элемента массива.

[1, 2, 3].forEach(n => console.log(n));

map

Создает новый массив, применяя функцию к каждому элементу.

const doubled = [1, 2, 3].map(n => n * 2);
console.log(doubled); // [2, 4, 6]

filter

Создает новый массив, включающий только элементы, удовлетворяющие условию.

const filtered = [1, 2, 3, 4].filter(n => n > 2);
console.log(filtered); // [3, 4]

reduce

Выполняет свертку массива, возвращая одно итоговое значение.

const sum = [1, 2, 3].reduce((acc, n) => acc + n, 0);
console.log(sum); // 6

Методы сортировки и изменения порядка

sort

Сортирует элементы массива.

const arr = [3, 1, 4];
arr.sort();
console.log(arr); // [1, 3, 4]

reverse

Меняет порядок элементов на обратный.

const arr = [1, 2, 3];
arr.reverse();
console.log(arr); // [3, 2, 1]

Методы копирования и извлечения

slice

Создает новый массив, копируя часть существующего массива.

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

toReversed

Создает новый массив с элементами в обратном порядке (не изменяет оригинал).

const arr = [1, 2, 3];
console.log(arr.toReversed()); // [3, 2, 1]

Методы преобразования в строку

join

Объединяет элементы массива в строку с заданным разделителем.

console.log([1, 2, 3].join('-')); // '1-2-3'

toString

Преобразует массив в строку через запятую.

console.log([1, 2, 3].toString()); // '1,2,3'

Методы работы с итераторами

keys

Возвращает итератор по индексам массива.

for (const key of ['a', 'b'].keys()) console.log(key); // 0, 1

values

Возвращает итератор по значениям массива.

for (const value of ['a', 'b'].values()) console.log(value); // 'a', 'b'

entries

Возвращает итератор по парам [индекс, значение].

for (const [index, value] of ['a', 'b'].entries()) {
    console.log(index, value);
}

Методы проверки и заполнения массива

fill

Заполняет массив указанным значением.

const arr = new Array(3).fill(0);
console.log(arr); // [0, 0, 0]

flat

“Разглаживает” вложенные массивы в один плоский массив.

const arr = [1, [2, [3]]];
console.log(arr.flat(2)); // [1, 2, 3]

flatMap

Применяет функцию к каждому элементу и разворачивает результат в один массив.

const arr = ['a', 'b'];
console.log(arr.flatMap(c => [c, c.toUpperCase()])); // ['a', 'A', 'b', 'B']

Методы создания массива

Array.from

Создает массив из массива-подобных объектов или итерируемых значений.

const arr = Array.from('abc');
console.log(arr); // ['a', 'b', 'c']

Array.of

Создает массив из переданных аргументов.

const arr = Array.of(1, 2, 3);
console.log(arr); // [1, 2, 3]

Проверка массива

Array.isArray

Проверяет, является ли значение массивом.

console.log(Array.isArray([])); // true
console.log(Array.isArray({})); // false