--- title: Array.prototype.push() slug: Web/JavaScript/Reference/Global_Objects/Array/push translation_of: Web/JavaScript/Reference/Global_Objects/Array/push original_slug: Web/JavaScript/Referencia/Objectes_globals/Array/push ---
El mètode push()
afegeix un o més elements al final d'un array i retorna el nou tamany de l'array.
arr.push(element1, ..., elementN)
elementN
El nou valor de la propietat {{jsxref("Array.length", "length")}} de l'objecte del qual s'ha executat el mètode.
El mètode push
afegeix valors a un array.
push
és genèric de manera intencionada. Es pot utilitzar aquest mètode amb {{jsxref("Function.call", "call()")}} i {{jsxref("Function.apply", "apply()")}} en objectes semblants a arrays. El mètode push
depèn de la propietat length
per a determinar on insertar els nous valors. Si la propietat length
no es pot convertir en un nombre, la posició utilitzada serà la 0. Això inclou la posibilitat que no existeixi la propietat length
, en aquest case es crearà automàticament la propietat length
.
Els únics objectes semblants a arrays que inclou el nucli de JavaScript són els {{jsxref("Global_Objects/String", "strings", "", 1)}}, tot i que no admeten la aplicació d'aquest mètode ja que els strings són immutables.
El codi següent crea un array anomenat esports
que conté dos elements, llavors l'hi afegeix dos elements més. La variable total
acaba revent el valor del nou tamany d e l'array.
var esports = ['futbol', 'basket']; var total = esports.push('badminton', 'natació'); console.log(esports); // ['futbol', 'basket', 'badminton', 'natació'] console.log(total); // 4
Aquest exemple utilitza {{jsxref("Function.apply", "apply()")}} per a afegir tots els elements d'un segon array.
var verdures = ['ceba', 'patata']; var mesVerdures = ['pastanaga', 'rabe']; // Uneix el segon array al primer // Equivalent a verdures.push('pastanaga', 'rabe'); Array.prototype.push.apply(verdures , mesVerdures); console.log(verdures); // ['ceba', 'patata', 'pastanaga', 'rabe']
Especificació | Estat | Comentaris |
---|---|---|
{{SpecName('ES3')}} | {{Spec2('ES3')}} | Definició inicial. Implementat a JavaScript 1.2. |
{{SpecName('ES5.1', '#sec-15.4.4.7', 'Array.prototype.push')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-array.prototype.push', 'Array.prototype.push')}} | {{Spec2('ES6')}} |
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suport bàsic | {{CompatChrome("1.0")}} | {{CompatGeckoDesktop("1.7")}} | {{CompatIE("5.5")}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
Característica | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suport bàsic | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |