定義と使用方
pop()関数は、配列の最後の要素を削除(pop、つまり「ポンッ」と押し出すように)する関数です。
特徴
- 配列の最後の要素を削除します。
- 元の配列自体を直接変更します。
- この動作によって配列の長さが1つ減ります。
- 削除された要素を返します。
基本の例
const arr = [1, 2, 3];
// 配列の最後の要素を削除します。
arr.pop();
console.log(arr); // 出力:[1, 2]
shift()関数はこれと似ていますが、配列の最初の要素を削除します。
構文
arr.pop()
arrはpop()関数を適用する配列です。
パラメーター
なし。
戻り値
pop()関数は、配列から削除された最後の要素の値を返します。pop()関数で削除する要素がなく、配列が空の場合はundefinedが返されます。
pop()関数の戻り値
const arr = [1, 2, 3];
// 配列の最後の要素を削除します。
const removedItem = arr.pop();
console.log(arr); // 出力:[1, 2]
console.log(removedItem); // 出力:3
// 配列が空の場合
const emptyArray = [];
const emptyArrayRemovedItem = emptyArray.pop(); // 削除する要素がなく、配列が空である
console.log(emptyArrayRemovedItem); // 出力:undefined
注意すべき点とさまざまな状況
pop()関数を使用する際に重要ないくつかの概念と注意点があります。
- 戻り値
- 元の配列の変更と配列の長さ
- ループと併用して逆順に並べ替える
delete演算子で配列の最後の要素を削除する
戻り値
pop()関数は削除した要素を返します。返された値は変数に保存することができます。
const fruits = ["apple", "banana", "cherry"];
const removedFruit = fruits.pop();
console.log(removedFruit); // 出力:"cherry"
元の配列の変更と配列の長さ
pop()関数は元の配列を変更します。したがって、配列から要素を削除すると配列が変更され、配列の長さが短くなるという点を理解しておく必要があります。
const fruits = ["apple", "banana", "cherry"];
fruits.pop();
console.log(fruits.length); // 出力:2
コード補足説明
配列のlengthプロパティは、配列に含まれる要素の数を数値で返します。
ループと併用して逆順に並べ替える
pop()関数とループを使用して、配列を逆順に並べ替えることができます。
pop()関数とループを使用して、配列を逆順に並べ替えることができます。
const fruits = ["apple", "banana", "cherry"];
// 逆順に並べ替えるための空の配列を作成
const reversedFruits = [];
// 逆順に出力するためにループを使用
while (fruits.length > 0) {
reversedFruits.push(fruits.pop());
}
// 逆順に並べ替えられた配列を出力
console.log(reversedFruits); // 出力:["cherry", "banana", "apple"]
コード補足説明while文は、条件式が真(true)である間、コードブロックを繰り返し実行するループ構文です。
配列を逆順に並べ替えるには、JavaScriptにはreverse()関数が組み込まれており、この関数を使用すると配列を簡単に逆順に並べ替えることができます。reverse()関数を使用する方がはるかに便利で、より直感的です。
reverse()関数を使用して配列を逆順に並べ替える
const fruits = ["apple", "banana", "cherry"];
// 配列を逆順に並べ替える
const reversedFruits = fruits.reverse();
// 逆順に並べ替えられた配列を出力
console.log(reversedFruits); // 出力:["cherry", "banana", "apple"]
コード補足説明
配列のreverse()関数は、配列内の要素の順序を逆順(reverse)に並べ替える関数です。
delete演算子で配列の最後の要素を削除する
pop()関数の代わりにdelete演算子を使用して配列の最後の要素を削除すると、その要素の値は配列から削除されるのではなく空の状態になります。また、配列の長さも変更されません。
const fruits = ["apple", "banana", "cherry"];
// 配列の最後の要素を削除
delete fruits[fruits.length - 1];
// 配列を出力
console.log(fruits); // 出力:["apple", "banana", <空>]
console.log(fruits[3]); // 出力:undefined
配列の最後の要素を削除するためにdelete演算子を使用する方法は推奨されません。
仕様書
| 仕様書 | |
|---|---|
pop()
|
ECMAScript Language Specification #sec-array.prototype.pop |
ブラウザ互換性
| メソッド |
デスクトップ Chrome
|
デスクトップデスクトップ Edge
|
デスクトップ Firefox
|
Safari
|
Node.js
|
|---|---|---|---|---|---|
pop()
|
1 | 12 | 1 | 1 | 0.10 |