Array.prototype.push()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since иÑÐ»Ñ 2015 г..
Сводка
ÐеÑод push() добавлÑÐµÑ Ð¾Ð´Ð¸Ð½ или более ÑлеменÑов в ÐºÐ¾Ð½ÐµÑ Ð¼Ð°ÑÑива и возвÑаÑÐ°ÐµÑ Ð½Ð¾Ð²ÑÑ Ð´Ð»Ð¸Ð½Ñ Ð¼Ð°ÑÑива.
СинÑакÑиÑ
arr.push(element1, ..., elementN)
ÐаÑамеÑÑÑ
elementN-
ÐлеменÑÑ, добавлÑемÑе в ÐºÐ¾Ð½ÐµÑ Ð¼Ð°ÑÑива.
ÐозвÑаÑаемое знаÑение
Ðовое знаÑение ÑвойÑÑва length обÑекÑа, Ð´Ð»Ñ ÐºÐ¾ÑоÑого бÑл вÑзван даннÑй меÑод.
ÐпиÑание
ÐеÑод push пÑиÑоединÑÐµÑ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ Ðº маÑÑивÑ.
ÐеÑод push не ÑвлÑеÑÑÑ Ð¿ÑивÑзаннÑм к ÑипÑ; ÑÑÐ¾Ñ Ð¼ÐµÑод Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð²Ñзван или пÑименÑн к обÑекÑам, напоминаÑÑим маÑÑив. ÐеÑод опиÑаеÑÑÑ Ð½Ð° ÑвойÑÑво length Ð´Ð»Ñ Ð¾Ð¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¼ÐµÑÑа вÑÑавки знаÑений. ÐÑли ÑвойÑÑво length не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑеобÑазовано в ÑиÑло, бÑÐ´ÐµÑ Ð¸ÑполÑзоваÑÑ Ð¸Ð½Ð´ÐµÐºÑ 0. СÑда вÑ
Ð¾Ð´Ð¸Ñ ÑлÑÑай неÑÑÑеÑÑÐ²Ð¾Ð²Ð°Ð½Ð¸Ñ ÑвойÑÑва length, в ÑÑом ÑлÑÑае оно Ñакже бÑÐ´ÐµÑ Ñоздано.
ÐдинÑÑвеннÑми ÑоднÑми маÑÑивоподобнÑми обÑекÑами ÑвлÑÑÑÑÑ ÑÑÑоки, Ñ Ð¾ÑÑ Ðº ним он не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑименÑн, поÑколÑÐºÑ ÑÑÑоки ÑвлÑÑÑÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½ÑемÑми.
ÐÑимеÑÑ
>ÐÑимеÑ: добавление ÑлеменÑов в маÑÑив
СледÑÑÑий код ÑоздаÑÑ Ð¼Ð°ÑÑив sports, ÑодеÑжаÑий два ÑлеменÑа, а заÑем добавлÑÐµÑ Ðº Ð½ÐµÐ¼Ñ ÐµÑÑ Ð´Ð²Ð° ÑлеменÑа. ÐеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ total бÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð½Ð¾Ð²ÑÑ Ð´Ð»Ð¸Ð½Ñ Ð¼Ð°ÑÑива.
var sports = ["ÑÑÑбол", "бейÑбол"];
var total = sports.push("амеÑиканÑкий ÑÑÑбол", "плавание");
console.log(sports); // ['ÑÑÑбол', 'бейÑбол', 'амеÑиканÑкий ÑÑÑбол', 'плавание']
console.log(total); // 4
ÐÑимеÑ: ÑлиÑние двÑÑ Ð¼Ð°ÑÑивов
Ð ÑÑом пÑимеÑе иÑполÑзÑеÑÑÑ ÑÑнкÑÐ¸Ñ apply() Ð´Ð»Ñ Ð¿Ð¾Ð¼ÐµÑÐµÐ½Ð¸Ñ Ð²ÑеÑ
ÑлеменÑов из вÑоÑого маÑÑива в пеÑвÑй.
var vegetables = ["паÑÑеÑнак", "каÑÑоÑка"];
var moreVegs = ["ÑелÑдеÑей", "ÑвÑкла"];
// Ð¡Ð»Ð¸Ð²Ð°ÐµÑ Ð²ÑоÑой маÑÑив Ñ Ð¿ÐµÑвÑм
// ÐквиваленÑно вÑÐ·Ð¾Ð²Ñ vegetables.push('ÑелÑдеÑей', 'ÑвÑкла');
Array.prototype.push.apply(vegetables, moreVegs);
console.log(vegetables); // ['паÑÑеÑнак', 'каÑÑоÑка', 'ÑелÑдеÑей', 'ÑвÑкла']
СпеÑиÑикаÑии
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-array.prototype.push> |