【JavaScript】配列操作ガイド
- array.at()
- array.unshift()
- array.push()
- array.shift()
- array.pop()
- array.splice()
- array.slice()
- delete array[n]
- array.filter()
array.at()
配列の特定のインデックスの要素を取得します。負の値を指定すると末尾から数えた位置になります。
const fruits = ['apple', 'banana', 'cherry'];
console.log(fruits.at(1)); // "banana"
console.log(fruits.at(-1)); // "cherry"
console.log(fruits.at(3)); // undefined
array.unshift()
配列の先頭に1つ以上の要素を追加し、新しい配列の長さを返します。
const nums = [2, 3, 4];
nums.unshift(1); // 先頭に1を追加
console.log(nums); // [1, 2, 3, 4]
nums.unshift(-2, -1, 0); // 複数の要素を追加
console.log(nums); // [-2, -1, 0, 1, 2, 3, 4]
array.push()
配列の末尾に1つ以上の要素を追加し、新しい配列の長さを返します。
const letters = ['a', 'b', 'c'];
letters.push('d'); // 末尾に'd'を追加
console.log(letters); // ['a', 'b', 'c', 'd']
letters.push('e', 'f'); // 複数の要素を追加
console.log(letters); // ['a', 'b', 'c', 'd', 'e', 'f']
array.shift()
配列の先頭要素を削除し、その要素を返します。配列が空の場合はundefinedを返します。
const animals = ['dog', 'cat', 'rabbit'];
const removed = animals.shift(); // 先頭の要素を削除
console.log(removed); // "dog"
console.log(animals); // ['cat', 'rabbit']
array.pop()
配列の末尾要素を削除し、その要素を返します。配列が空の場合はundefinedを返します。
const colors = ['red', 'blue', 'green'];
const lastColor = colors.pop(); // 末尾の要素を削除
console.log(lastColor); // "green"
console.log(colors); // ['red', 'blue']
array.splice()
配列の指定した位置から要素を削除・置換・追加するための多機能なメソッドです。
const numbers = [1, 2, 3, 4, 5];
numbers.splice(2, 1); // インデックス2から1つの要素を削除
console.log(numbers); // [1, 2, 4, 5]
numbers.splice(1, 2, 8, 9); // インデックス1から2つ削除し、代わりに8, 9を追加
console.log(numbers); // [1, 8, 9, 5]
array.slice()
配列の指定した範囲の要素を新しい配列として返します。元の配列は変更されません。
const cities = ['Tokyo', 'Osaka', 'Nagoya', 'Fukuoka'];
const selectedCities = cities.slice(1, 3); // インデックス1から3未満を抽出
console.log(selectedCities); // ['Osaka', 'Nagoya']
console.log(cities); // ['Tokyo', 'Osaka', 'Nagoya', 'Fukuoka']
delete array[n]
配列の特定の要素を削除しますが、配列の長さはそのままで、削除した位置にundefinedが残ります。
const fruits = ['apple', 'banana', 'cherry'];
delete fruits[1]; // インデックス1の要素を削除
console.log(fruits); // ['apple', undefined, 'cherry']
console.log(fruits.length); // 3
array.filter()
コールバック関数の条件を満たす要素のみを抽出した新しい配列を返します。
const scores = [85, 42, 75, 90, 60];
const passingScores = scores.filter(score => score >= 60); // 60以上のスコアを抽出
console.log(passingScores); // [85, 75, 90, 60]