--- title: Array.prototype.pop() slug: Web/JavaScript/Reference/Global_Objects/Array/pop tags: - Array - JavaScript - Prototype - Referenza - metodo translation_of: Web/JavaScript/Reference/Global_Objects/Array/pop ---
{{JSRef}}

Il metodo pop() rimuove l'ultimo elemento da un array e restituisce quell'elemento. Questo metodo modifica la lunghezza dell'array.

{{EmbedInteractiveExample("pages/js/array-pop.html")}}

Sintassi

arr.pop()

Valore di ritorno

L'elemento rimosso dall'array; {{jsxref("undefined")}} se l'array è vuoto.

Descrizione

Il metodo pop rimuove l'ultimo elemento da un array e restituisce quel valore al chiamante.

pop è intenzionalmente generico; questo metodo può essere {{jsxref("Function.call", "chiamato", "", 1)}} o {{jsxref("Function.apply", "applicato", "", 1)}} ad oggetti che assomigliano agli array. Gli oggetti che non contengono una proprietà length che riflette l'ultimo di una serie di proprietà numeriche consecutive basate su zero potrebbero non comportarsi in alcun modo significativo.

Se chiami pop() su un array vuoto, ritorna {{jsxref("undefined")}}.

{{jsxref("Array.prototype.shift()")}} ha un comportamento simile a pop, ma applicato al primo elemento di un array.

Esempi

Rimozione dell'ultimo elemento di un array

Il seguente codice crea l'array myFish contenente quattro elementi, dopo rimuove il suo ultimo elemento.

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];

var popped = myFish.pop();

console.log(myFish); // ['angel', 'clown', 'mandarin' ]

console.log(popped); // 'sturgeon'

Usare apply( ) o call ( ) sugli array-like objects

Il codice seguente crea l'array-like object myFish contenente quattro elementi e un parametro length, poi rimuove il suo ultimo elemento e decrementa il parametro length.

var myFish = {0:'angel', 1:'clown', 2:'mandarin', 3:'sturgeon', length: 4};

var popped = Array.prototype.pop.call(myFish); //same syntax for using apply( )

console.log(myFish); // {0:'angel', 1:'clown', 2:'mandarin', length: 3}

console.log(popped); // 'sturgeon'

Specifiche

Specifica Stato Commento
{{SpecName('ES3')}} {{Spec2('ES3')}} Definizione iniziale Implementato in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.4.4.6', 'Array.prototype.pop')}} {{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-array.prototype.pop', 'Array.prototype.pop')}} {{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-array.prototype.pop', 'Array.prototype.pop')}} {{Spec2('ESDraft')}}

Compatibilità con i browser

{{Compat("javascript.builtins.Array.pop")}}

Vedi anche