2021.10.22

配列①要素の取得・追加・削除(Javascript)

Javascriptを学習していて、最初にぶちあたった壁が配列でした。

なんなら今でもあんまり分かっていません。

復習も含めて再確認しようと思います。

配列の作り方は2種類ある。

①Arrayコンストラクタを使う

const Array = new Array(“日本” , “アメリカ” , “ロシア”);

数値が1つだけの配列は作れない!文字列はOK。

②配列リテラルを使う

const Array = [“広島” , “岡山” , ”山口”];

★配列の要素は同じデータ型で記述する。

★要素には順番がついていて、左端から0番、1番と続く。

この番号のことを「インデックス」と呼ぶ。

できることはたくさんありますが…

①配列の中の要素を取得

◎取得したい要素のインデックスを角カッコで指定する

const fruits = [“banana”, “orange”, “apple”, “grapes”];
 
console.log(“左から2番目は” + fruits[1]);
 
★実行結果は 左から2番目はorange
 
◎find関数を使って条件に合った最初の要素を取得
 
const numbers = [10, 20, 30, 40];

const over15 = numbers.find(function (number) {
  return number > 15;
})
console.log(over15);
 
★実行結果は 20
※条件に合う最初の要素だけが返ってくる
 
◎slice関数を使って指定した範囲の要素を取得
 
const fruits = [“banana”, “orange”, “apple”, “grapes”, “peach”];

console.log(fruits.slice(1, 4));
//インデックス1番(orange)=<表示結果<4番(peachは含まないよ!)まで
console.log(fruits.slice(2));
//第1引数のみの場合は、インデックス2番(apple)から最後(peach)まで
 
★実行結果は (3) [‘orange’, ‘apple’, ‘grapes’]
★実行結果は (3) [‘apple’, ‘grapes’, ‘peach’]

②配列内の要素の追加・削除

◎追加の場合:push(末尾に要素を追加)、unshift(先頭に要素を追加)
 
const fruits = [“banana”, “orange”, “apple”, “grapes”];

fruits.push(“kiwi”);
fruits.unshift(“peach”);
console.log(fruits);
 
★実行結果は (6) [‘peach’, ‘banana’, ‘orange’, ‘apple’, ‘grapes’, ‘kiwi’]
 
◎削除の場合:pop(末尾の要素を削除)、shift(先頭の要素を削除)、splice(指定した場所の要素を削除)
 
const fruits = [“banana”, “orange”, “apple”, “grapes”];

fruits.pop();
console.log(fruits);
 
★実行結果は (3) [‘banana’, ‘orange’, ‘apple’]
 
const fruits = [“banana”, “orange”, “apple”, “grapes”];

fruits.splice(1,2);
//インデックス1番(orange)から2個削除という意味
console.log(fruits);
 
★実行結果は (2) [‘banana’, ‘grapes’]
 

③配列の置換

splice()は削除だけでなく置換という機能ももっている

const fruits = [“banana”, “orange”, “apple”, “grapes”];

fruits.splice(1,2, “ミカン” , “リンゴ”);
//第1引数に置き換えたいインデックス 第2引数に何個かを指定
//第3引数に置き換えたい値を記述
console.log(fruits);
 
★実行結果は (4) [‘banana’, ‘ミカン’, ‘リンゴ’, ‘grapes’]

④deleteを使った配列内の要素の削除

const fruits = [“banana”, “orange”, “apple”, “grapes”];

delete fruits[1];
//削除したいインデックスを[]の中に記述
console.log(fruits);
 
★実行結果は (4) [‘banana’, empty, ‘apple’, ‘grapes’]
 
※インデックス1番が無くなったけど3番が”apple”で、
4番が”grapes”ですよ!という意味ですね。
ちなみに、deleteでは、配列全体を削除することはできないみたいです。
 
長くなったので、次に続きます。

\SHARE/

カテゴリー:
タグ: