JavaScriptで配列の最後の要素を削除したい場合、`pop()`メソッドを使用します。このメソッドは配列の末尾から要素を1つ取り除き、その要素を戻り値として返します。

pop()メソッドの基本的な使い方

const fruits = ['りんご', 'バナナ', 'オレンジ'];
const removedFruit = fruits.pop();

console.log(removedFruit); // 'オレンジ'
console.log(fruits); // ['りんご', 'バナナ']

pop()メソッドの特徴

1. 配列を直接変更する(破壊的メソッド)

2. 削除した要素を戻り値として返す

3. 空の配列に対して実行すると`undefined`を返す

実践的な使用例

配列の要素を順番に処理する

const tasks = ['タスク1', 'タスク2', 'タスク3'];

while (tasks.length > 0) {
    const currentTask = tasks.pop();
    console.log(`${currentTask}を処理中...`);
}

スタック(LIFO)の実装

class Stack {
    constructor() {
        this.items = [];
    }

    push(element) {
        this.items.push(element);
    }

    pop() {
        return this.items.pop();
    }
}

const stack = new Stack();
stack.push(1);
stack.push(2);
console.log(stack.pop()); // 2

注意点

1. 空配列への使用

const emptyArray = [];
console.log(emptyArray.pop()); // undefined

2. 非配列オブジェクトでの使用

const notArray = { length: 0 };
Array.prototype.pop.call(notArray); // エラーは発生しない

代替手段

配列の末尾を削除する他の方法も存在します:

1. slice()メソッド(非破壊的)

const array = [1, 2, 3];
const newArray = array.slice(0, -1);

2. lengthプロパティの操作

const array = [1, 2, 3];
array.length = array.length - 1;

まとめ

`pop()`メソッドは、配列の最後の要素を簡単に削除できる便利なメソッドです。配列を直接変更する破壊的メソッドであることに注意しながら使用しましょう。スタックの実装や配列の逐次処理など、様々な場面で活用できます。

使い方を誤るとバグの原因となる可能性があるため、以下の点に気をつけましょう:

  • 空配列に対する使用
  • 配列の参照を保持している他のコードへの影響
  • 非配列オブジェクトでの使用

これらの注意点を意識しながら適切に使用することで、効率的な配列操作が可能になります。