The pop()
method removes the last element from an array and returns that element. This method changes the length of the array.
var a = [1, 2, 3]; a.pop(); console.log(a); // [1, 2]
Syntax
arr.pop()
Return value
The removed element from the array; undefined
if the array is empty.
Description
The pop
method removes the last element from an array and returns that value to the caller.
pop
is intentionally generic; this method can be called or applied to objects resembling arrays. Objects which do not contain a length
property reflecting the last in a series of consecutive, zero-based numerical properties may not behave in any meaningful manner.
If you call pop()
on an empty array, it returns undefined
.
Examples
Removing the last element of an array
The following code creates the myFish
array containing four elements, then removes its last element.
var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; var popped = myFish.pop(); console.log(myFish); // ['angel', 'clown', 'mandarin' ] console.log(popped); // 'sturgeon'
Specifications
Specification | Status | Comment |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.2. |
ECMAScript 5.1 (ECMA-262) The definition of 'Array.prototype.pop' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Array.prototype.pop' in that specification. |
Standard | |
ECMAScript Latest Draft (ECMA-262) The definition of 'Array.prototype.pop' in that specification. |
Draft |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 1.0 | (Yes) | 1.0 (1.7 or earlier) | 5.5 | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
See also
Document Tags and Contributors
Tags:
Contributors to this page:
erikadoyle,
oksana-khristenko,
bakotaco,
pitouseang,
luisco,
fscholz,
eduardoboucas,
Fornost461,
teemuremes,
elindie,
Mingun,
clivepaterson768,
nquinlan,
ethertank,
Sheppy,
trevorh,
Raynos,
evilpie,
Sevenspade,
Mgjbot,
Yuichirou,
Ptak82,
Maian,
Dria
Last updated by:
erikadoyle,