[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Array/push [Back]  [Original]

Array.prototype.push() - JavaScript | MDN

Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.

View in English Always switch to English

Array.prototype.push()

Baseline Widely available

This feature is well established and works across many devices and browser versions. Its been available across browsers since julio de 2015.

El mtodo push() aade uno o ms elementos al final de un array y devuelve la nueva longitud del array.

In this article

Prubalo

const animals = ["pigs", "goats", "sheep"];

const count = animals.push("cows");
console.log(count);
// Expected output: 4
console.log(animals);
// Expected output: Array ["pigs", "goats", "sheep", "cows"]

animals.push("chickens", "cats", "dogs");
console.log(animals);
// Expected output: Array ["pigs", "goats", "sheep", "cows", "chickens", "cats", "dogs"]

Sintaxis

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

Parmetros

elementN

Los elementos a aadir al final del array.

Valor devuelto

La nueva propiedad length del objeto sobre el cual se efectu la llamada.

Descripcin

El mtodo push es muy prctico para aadir valores a un array.

push es genrico intencionadamente. Este mtodo puede ser call() o apply() a objetos que representen arrays. El mtodo push depende de la propiedad length para decidir donde empezar a insertar los valores dados. Si el valor de la propiedad length no puede ser convertido en numrico, el ndice 0 es usado. Esto permite la posibilidad de que la propiedad length sea inexistente, y en este caso length ser creado.

Los nicos objetos nativos que se asemejen al array son strings objetos, aunque estos no se puedan usar en la aplicacin de este mtodo ya que son inmutables.

Ejemplos

Ejemplo: Aadiendo elementos a un array

El siguiente cdigo crea el array sports que contiene dos elementos, luego aade 2 elementos ms. Tras ejecutar el cdigo, sports contiene 4 elementos: "soccer", "baseball", "football" and "swimming".

js
var sports = ["soccer", "baseball"];
var total = sports.push("football", "swimming");

console.log(sports); // ['soccer', 'baseball', 'football', 'swimming']
console.log(total); // 4

Uniendo dos arrays

This example uses apply() to push all elements from a second array.

Do not use this method if the second array (moreVegs in the example) is very large, because the maximum number of parameters that one function can take is limited in practice. See apply() for more details.

js
var vegetables = ["parsnip", "potato"];
var moreVegs = ["celery", "beetroot"];

// Merge the second array into the first one
// Equivalent to vegetables.push('celery', 'beetroot');
Array.prototype.push.apply(vegetables, moreVegs);

console.log(vegetables); // ['parsnip', 'potato', 'celery', 'beetroot']

Using an object in an array-like fashion

Como se menciona anteriormente, push es intencionadamente genrico, y podemos usar eso a nuestro favor. Array.prototype.push puede funcionar bien con un objeto, como muestra este ejemplo. Ten en cuenta que no se crea un array para almacenar una coleccin de objetos. En su lugar, almacenamos la coleccin en el propio objeto y se utiliza el mtodo call sobre Array.prototype.push para hacer creer al mtodo que estamos tratando a un array, y simplemente funciona, gracias a la forma en que JavaScript nos permite establecer el contexto de la ejecucin.

js
var obj = {
  length: 0,

  addElem: function addElem(elem) {
    // obj.length is automatically incremented
    // every time an element is added.
    [].push.call(this, elem);
  },
};

// Let's add some empty objects just to illustrate.
obj.addElem({});
obj.addElem({});
console.log(obj.length);
//  2

Tenga en cuenta que aunque obj no es un array, el mtodo push ha incrementado satisfactoriamente la propiedad length de obj tal y como si se tratara de un array.

Especificaciones

Specification
ECMAScript 2027 LanguageSpecification
# sec-array.prototype.push

Compatibilidad con navegadores

Ver tambin


Web Proxy Viewer  |  New URL  |  Original Page