Array.prototype.push()
Сводка
Метод push() добавляет один или более элементов в конец массива и возвращает новую длину массива.
Синтаксис
arr.push(element1, ..., elementN)
Параметры
elementN-
Элементы, добавляемые в конец массива.
Возвращаемое значение
Новое значение свойства length объекта, для которого был вызван данный метод.
Описание
Метод push присоединяет значения к массиву.
Метод push не является привязанным к типу; этот метод может быть вызван или применён к объектам, напоминающим массив. Метод опирается на свойство length для определения места вставки значений. Если свойство length не может быть преобразовано в число, будет использовать индекс 0. Сюда входит случай несуществования свойства length, в этом случае оно также будет создано.
Единственными родными массивоподобными объектами являются строки, хотя к ним он не может быть применён, поскольку строки являются неизменяемыми.
Примеры
Пример: добавление элементов в массив
Следующий код создаёт массив sports, содержащий два элемента, а затем добавляет к нему ещё два элемента. Переменная total будет содержать новую длину массива.
js
var sports = ['футбол', 'бейсбол'];
var total = sports.push('американский футбол', 'плавание');
console.log(sports); // ['футбол', 'бейсбол', 'американский футбол', 'плавание']
console.log(total); // 4
Пример: слияние двух массивов
В этом примере используется функция apply() для помещения всех элементов из второго массива в первый.
js
var vegetables = ['пастернак', 'картошка'];
var moreVegs = ['сельдерей', 'свёкла'];
// Сливает второй массив с первым
// Эквивалентно вызову vegetables.push('сельдерей', 'свёкла');
Array.prototype.push.apply(vegetables, moreVegs);
console.log(vegetables); // ['пастернак', 'картошка', 'сельдерей', 'свёкла']
Спецификации
| Specification |
|---|
| ECMAScript Language Specification # sec-array.prototype.push |
Совместимость с браузерами
BCD tables only load in the browser