Шпаргалка по методам массивов JavaScript
На этой странице представлено подробное руководство по методам массивов JavaScript, включая распространенные операции, новые функции ES6, оптимизацию производительности и многое другое.
Создание массива
JavaScript предоставляет несколько способов создания массивов:
Использование литералов массива
let arr = [1, 2, 3];Использование конструктора
let arr = new Array(1, 2, 3);Использование метода Array.of
let arr = Array.of(1, 2, 3);Использование метода Array.from
let arr = Array.from('123'); // ['1', '2', '3']
Операции с массивами
Массивы предоставляют множество методов для добавления, удаления, изменения и запроса данных:
Добавление элементов
push: добавить один или несколько элементов в конец массива.unshift: добавить один или несколько элементов в начало массива.
Удаление элементов
pop: удалить последний элемент массива.shift: удалить первый элемент массива.splice: удалить любое количество элементов по индексу.
Поиск элементов
indexOf: найти индекс элемента в массиве.includes: определить, содержит ли массив определенный элемент.
Итерация по массивам
forEach: один раз выполнить функцию обратного вызова для каждого элемента массива.map: создать новый массив с результатами вызова предоставленной функции для каждого элемента в вызывающем массиве.filter: создать новый массив со всеми элементами, прошедшими тест, реализованный предоставленной функцией.
Преобразование массива
join: объединить все элементы массива σε строку.slice: вернуть поверхностную копию части массива.concat: объединить два или более массивов.
Новые функции ES6
В ES6 было внесено множество улучшений в операции с массивами:
Оператор расширения (Spread Operator)
let arr = [1, 2, 3];
let arr2 = [...arr, 4, 5]; // [1, 2, 3, 4, 5]
Array.prototype.find
let result = arr.find(item => item > 2); // 3
Array.prototype.findIndex
let index = arr.findIndex(item => item > 2); // 2
Array.prototype.fill
arr.fill(0); // [0, 0, 0]
Array.prototype.includes
arr.includes(2); // true
Оптимизация производительности
При работе с большими массивами оптимизация производительности особенно важна:
- Старайтесь использовать нативные методы, такие как
mapиfilter, которые обычно реализованы на C++ и работают быстрее, чем циклы JavaScript. - Для массивов, которыми часто манипулируют, рассмотрите возможность использования
Typed Arrays. - Избегайте манипуляций с DOM внутри циклов; вместо этого соберите DOM-узлы, которыми нужно управлять, и выполните операцию сразу.
Заключение
Благодаря этому руководству вы должны глубже понять операции с массивами JavaScript. Дополнительную информацию можно найти в MDN Web Docs.