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 の定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報