Array.prototype.push()

El mètode push() afegeix un o més elements al final d'un array i retorna el nou tamany de l'array.

Sintaxi

arr.push(element1, ..., elementN)

Paràmetres

elementN
Els elements que seran afegits al final de l'array.

Valor retornat

El nou valor de la propietat length de l'objecte del qual s'ha executat el mètode.

Descripció

El mètode push afegeix valors a un array.

push és genèric de manera intencionada. Es pot utilitzar aquest mètode amb call() i 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 strings, tot i que no admeten la aplicació d'aquest mètode ja que els strings són immutables.

Exemples

Afegir elements a un array

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 = ['fubtol', 'basket'];
var total = sports.push('badminton', 'natació');

console.log(sports); // ['fubtol', 'basket', 'badminton', 'natació']
console.log(total);  // 4

Unir dos arrays

Aquest exemple utilitza 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']

Especificacions

Especificació Estat Comentaris
ECMAScript 3rd Edition (ECMA-262) Standard Definició inicial. Implementat a JavaScript 1.2.
ECMAScript 5.1 (ECMA-262)
The definition of 'Array.prototype.push' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Array.prototype.push' in that specification.
Standard  

Compatibilitat amb navegadors

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suport bàsic 1.0 1.0 (1.7 or earlier) 5.5 (Yes) (Yes)
Característica Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suport bàsic (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Vegeu també

Document Tags and Contributors

 Contributors to this page: enTropy
 Last updated by: enTropy,