【GAS】popメソッドの使い方・活用例
popメソッドは配列の最後の要素を削除し、その要素を返すという便利な処理を行うことができます。この記事では、GASにおけるpopメソッドの基本的な使い方と発展的な活用事例をご紹介します。
popメソッドの基本的な使い方
Array.pop()
popメソッドは、配列の最後の要素を削除し、削除された要素を返します。このメソッドは元の配列を変更しますが、新しい配列を作成するわけではありません。
let fruits = ['Apple', 'Banana', 'Cherry', 'Date'];
let lastFruit = fruits.pop();
console.log(fruits); // ['Apple', 'Banana', 'Cherry']
console.log(lastFruit); // 'Date'
この例では、配列fruitsから最後の要素’Date’が削除され、変数lastFruitにその値が格納されます。元の配列fruitsは3つの要素のみを含む配列になります。
popメソッドの発展的な活用例
逆順の配列を生成する
配列の全要素を逆順に並べ替えるには、pop
メソッドを使用して、元の配列から順に要素を取り出し、新しい配列に追加することで実現できます。この方法は、元の配列を変更しつつ、逆順の新しい配列を作成します。
let originalArray = ['Apple', 'Banana', 'Cherry', 'Date'];
let reversedArray = [];
while (originalArray.length > 0) {
let element = originalArray.pop();
reversedArray.push(element);
}
console.log(reversedArray); // ['Date', 'Cherry', 'Banana', 'Apple']
originalArrayから要素を一つずつ取り出して削除(pop)し、その要素をreversedArrayに追加(push)することで、配列の要素を逆順にしています。
特定の条件に該当する要素の削除
ここでは、popメソッドを使用して、配列内の特定の条件に基づいて要素を削除するプロセスを自動化する応用例を紹介します。この例では、配列から偶数をすべて削除するプロセスを示します。これを実現するには、一時配列を使用して奇数のみを保持し、その後で元の配列に戻す方法を取ります。
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let tempArray = [];
// numbers配列からすべての要素を順に取り出し、偶数以外をtempArrayに保持
while (numbers.length > 0) {
let element = numbers.pop();
if (element % 2 !== 0) {
tempArray.push(element);
}
}
// tempArrayから要素を取り出し、元の配列に戻す(このプロセスで元の順序は逆転する)
while (tempArray.length > 0) {
numbers.push(tempArray.pop());
}
console.log(numbers); // [9, 7, 5, 3, 1]
この例では、まずnumbers配列からすべての要素を取り出し、その要素が偶数でない場合に限りtempArrayに追加します。その後、tempArrayに残った要素(すなわち、最初の配列から削除された偶数以外のすべての要素)をnumbers配列に戻します。このプロセスでは、popとpushメソッドを使って、特定の条件に合致する要素のみを効率的に処理しています。なお、このプロセスでは元の配列の順序が逆転する点に注意が必要です。必要に応じて、最後に配列を再度逆転させることで、元の順序を復元できます。
具体例を挙げるために複雑な処理しましたが、偶数の除外や抽出であればfilterメソッドも楽に活用できます。
まとめ
GASにおけるpopメソッドの基本的な使い方と発展的な活用事例をご紹介しました。