Методы массива
1. Методы split() и join()
split(s)
— позволяет превратить строку в массив, разбив ее по разделителю s
. Это не метод массива, но рассматриваем мы его сейчас, так как раньше мы о массивах не знали.
join(s)
— делает в точности противоположное split
. Он берет массив и склеивает его в строку, используя s
как разделитель.
2. Методы indexOf() и includes()
array.indexOf(x)
— возвращает первый индекс, в котором элемент x
был найден в массиве или число -1
, если такого элемента нет. Используйте indexOf
тогда, когда необходимо получить непосредственно индекс элемента.
array.includes(x)
— определяет, содержит ли массив некоторый элемент x
, возвращая true
или false
соответственно. Используйте includes
тогда, когда необходимо проверить есть ли элемент в массиве и не важен его порядковый номер.
2.1. Проверка множественных условий с includes()
На первый взгляд пример ниже выглядит вполне хорошо. Однако, что если у нас будет больше красных фруктов, к примеру ещё вишня (cherry) или клюква (cranberries)? Будем ли мы расширять условие с помощью дополнительных ||
?
Можем переписать условие, с использованием Array.includes
, это очень просто и масштабируемо.
3. Методы push(), pop(), shift(), unshift()
Добавляют или удаляют крайние элементы массива. Работают только с крайним левым и крайним правым элементом массива и не могут поставить или удалить элемент с произвольной позиции. Для наглядности, взгляните на иллюстрацию ниже.
3.1. push и pop
push()
— позволяет добавить один или несколько элементов в конец массива. Метод возвращает значение свойства length
, которое определяет количество элементов в массиве.
pop()
— удаляет элемент из конца массива и возвращает удаленный элемент. Если массив пуст, метод возвращает undefined
.
В примере кодом описаны иллюстрации выше, первые 3 шага. Создается пустой массив с именем stack
и в конец массива добавляется три числа, одно за другим используя push()
, затем они удаляются используя pop()
.
3.2. shift() и unshift()
Реже используются методы shift
и unshift
.
shift()
— удаляет элемент из начала массива и возвращает его (элемента) значение.unshift()
— добавляет элемент в начало массива.
4. Метод slice()
Синтаксис метода slice()
одинаков для строк и массивов. Его просто запомнить. Он позволяет извлекать элементы подмножества массива и добавлять их в новый массив. В большинстве случаев используется для создания копии части или целого исходного массива.
Копирует элементы от begin
, до, но не включая, end
.
Оба аргумента (
begin
иend
) не обязательны.Параметр
begin
определяет индекс, с которого следует начинать извлечение.Параметр
end
, определяет индекс элемента, на котором следует закончить извлечение. Методslice
не включает элемент с индексомend
в извлеченные элементы.Если
begin
иend
не указаны, копирование будет с начала массива, с индекса0
, - то есть скопируется весь массив.Если не указать параметр
end
, методslice
будет использовать длину массива (length
) для параметраend
.Метод
slice
не изменяет исходный массив, а возвращает новый массив, содержащий копию элементов исходного.Можно использовать отрицательные индексы, они отсчитываются с конца.
5. Метод splice()
splice()
— швейцарский нож для работы с массивами, в том случае, если исходный массив необходимо изменить. Позволяет удалять, добавлять и заменять элементы в произвольном месте массива.
5.1. Удаление элементов массива
Чтобы удалить элементы в массиве, передаются два аргумента.
position
— указывает позицию (индекс) первого элемента для удаленияnum
— определяет количество удаляемых элементов
Метод splice
изменяет исходный массив и возвращает массив, содержащий удаленные элементы.
На рисунке показан вызов метода score.splice(0, 3)
из примера выше.
5.2. Вставка элементов в массив
Вы можете вставить один или несколько элементов в массив, передав три или более аргумента методу splice
, при этом второй аргумент должен быть равен нулю.
Аргумент
position
указывает начальную позицию в массиве, куда будут вставлены новые элементы.Второй аргумент равен нулю
0
, он говорит методу не удалять какие-либо элементы.Третий, четвертый и все последующие аргументы — это новые элементы, которые вставляются в массив.
Обратите внимание, что метод splice
изменяет исходный массив. Кроме того, он не удаляет какие-либо элементы, поэтому в этом случае возвращается пустой массив.
На рисунке показан вызов метода colors.splice(2, 0, 'purple')
из примера выше.
5.3. Замена элементов массива
Метод splice()
также позволяет вставить новые элементы в массив при одновременном удалении существующих элементов.
Для этого необходимо передать по крайней мере три аргумента: вторым — количество элементов для удаления, а третьим — элементы для вставки. Количество удаляемых и добавляемых элементов может не совпадать.
На рисунке показан вызов метода languages.splice(1, 1, 'Python')
из примера выше.
6. Метод concat()
Используется для объединения двух или более массивов. Этот метод не изменяет исходный массив, а возвращает новый.
Last updated