配列.push() / pop() / shift() / unshift()
配列の末尾や先頭に要素を追加・削除するメソッドです。『push()』『pop()』は末尾、『unshift()』『shift()』は先頭を操作します。
構文
// 末尾に要素を追加します。 配列.push(要素1, 要素2, ...); // 末尾の要素を削除して返します。 var removed = 配列.pop(); // 先頭に要素を追加します。 配列.unshift(要素1, 要素2, ...); // 先頭の要素を削除して返します。 var removed = 配列.shift();
メソッド一覧
| メソッド | 概要 |
|---|---|
| push(要素) | 配列の末尾に1つ以上の要素を追加し、追加後の配列の長さを返します。 |
| pop() | 配列の末尾の要素を削除し、削除した要素を返します。空の配列に対して呼び出すと『undefined』が返されます。 |
| unshift(要素) | 配列の先頭に1つ以上の要素を追加し、追加後の配列の長さを返します。 |
| shift() | 配列の先頭の要素を削除し、削除した要素を返します。空の配列に対して呼び出すと『undefined』が返されます。 |
サンプルコード
var fruits = ["りんご", "みかん"];
// 末尾に要素を追加します。
fruits.push("ぶどう");
console.log(fruits); // 『りんご,みかん,ぶどう』と出力されます。
// 末尾の要素を削除します。
var last = fruits.pop();
console.log(last); // 『ぶどう』と出力されます。
console.log(fruits); // 『りんご,みかん』と出力されます。
// 先頭に要素を追加します。
fruits.unshift("バナナ");
console.log(fruits); // 『バナナ,りんご,みかん』と出力されます。
// 先頭の要素を削除します。
var first = fruits.shift();
console.log(first); // 『バナナ』と出力されます。
console.log(fruits); // 『りんご,みかん』と出力されます。
概要
これら4つのメソッドは配列の末尾と先頭の要素を操作する最も基本的なメソッドです。『配列.push()』と『配列.pop()』は末尾を、『配列.unshift()』と『配列.shift()』は先頭を操作します。いずれも元の配列を直接変更する破壊的メソッドです。
『配列.push()』は複数の要素をカンマ区切りで一度に追加でき、戻り値は追加後の配列の長さです。一方『配列.pop()』は引数を取らず、削除した要素そのものを返します。スタック(後入れ先出し)のデータ構造を実現する際に、この2つのメソッドの組み合わせが活用されます。
配列の途中にある要素を追加・削除したい場合は『配列.splice()』を使用してください。
対応ブラウザ
デスクトップ
全バージョンで対応しています
全バージョンで対応しています
全バージョンで対応しています
4.5 以前 ×
3 以前 ×モバイル
全バージョンで対応しています
Android Browser
37 以降 ○全バージョンで対応しています
Chrome Android
36 以降 ○
17 以前 ×
Firefox Android
79 以降 ○
3 以前 ×記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。