Array.prototype.pop()

pop() メソッドは、配列から最後の要素を取り除き、その要素を返します。このメソッドは配列の長さを変化させます。

構文

arrName.pop()

返値

配列の最後の要素。配列が空だった場合は、undefined

解説

pop メソッドは配列の最後の要素を取り除き、呼び出し元にその値を返します。

pop は意図的に汎用性を持たせています。つまり、このメソッドは配列に類似したオブジェクトに対して呼び出したり、適用したりすることもできます。ゼロから始まる数値プロパティであり、連続した連なりの最後を反映している length プロパティを含まないオブジェクトでは効果がないかもしれません。

空の配列に対して pop() を実行した場合は、undefined を返します。

Array.prototype.shift()pop と同様の動作をしますが、配列の最初の要素に適用されます。

配列の最後の要素を取り除く

以下のコードは、4 つの要素を含んだ配列 myFish を生成し、その後その最後の要素を取り除き、変数に代入しています。

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

var popped = myFish.pop();

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

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

配列風のオブジェクトでの apply( ) や call ( ) の使用

以下のコードは、4 つの要素と長さのパラメータを含む配列のような myFish オブジェクトを作成し、最後の要素を削除して長さのパラメータをデクリメントします。

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'

仕様書

仕様書
ECMAScript (ECMA-262)
Array.prototype.pop の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
popChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 5.5Opera 完全対応 4Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0nodejs 完全対応 0.1.100

凡例

完全対応  
完全対応

関連情報