JavaScriptの配列(Array)とは
配列は特殊なタイプの変数で、特殊な構文を使って複数の値を格納することができます。
JavaScript 配列の初期化
JavaScriptの配列は、配列リテラルと配列コンストラクタ構文の2つの方法で定義・初期化することができます。
JavaScript 配列の構文
配列リテラルの構文は単純です。カンマで区切られ、角括弧で囲まれた値のリストを受け取ります。
let 配列名 = [要素0, 要素1, 要素2, ...要素n]
次の例は、配列の構文を使用して、配列を定義し、初期化する方法です。
let stringArray = ["one", "two", "three"];
let numericArray = [10, 20, 30, 40];
let decimalArray = [1.1, 3.4, 7.2, 8.1];
let boolArray = [true, false, false, true, true];
let mixedArray = [100, "seven", true, 30];
JavaScriptの配列は、異なるデータ型の要素を複数格納することができます。
同じデータ型の値だけを配列に格納する必要はありません。
JavaScript 配列のコンストラクタ
配列の初期化は、Array コンストラクタの構文で new キーワードを使用します。
Arrayコンストラクタには、以下の3つの形式があります。
let 配列名 = new Array();
let 配列名 = new Array(Number length);
let 配列名 = new Array(要素0, 要素1, 要素3, ... 要素n);
上の構文でわかるように、配列はオブジェクトと同じようにnewキーワードで初期化することができます。
次の例は、Arrayコンストラクタの構文を使用して配列を定義する方法です。
let stringArray = new Array();
stringArray[0] = "one";
stringArray[1] = "two";
stringArray[2] = "three";
// ["one", "two", "three"]
let numberArray = new Array(3);
numberArray[0] = 1;
numberArray[1] = 2;
numberArray[2] = 3;
// [1, 2, 3]
let mixedArray = new Array(100, "two", 40, true);
// [100, 'two', 40, true]
配列はkeyに数値インデックスしか持てないことに注意してください。インデックスに文字列やその他のデータ型を使用することはできません。
なので以下の構文はできないので注意です。
let stringArray = new Array();
stringArray["A"] = "one";
stringArray["B"] = "two";
stringArray["C"] = "three";
配列の要素を取得する方法
配列の要素(値)には、インデックス(key)を使ってアクセスすることができます。
配列名と一緒に角括弧で囲んだインデックスを指定すると、そのインデックスにある要素を取得することができます。
また、JavaScriptでは、配列のインデックスは0から始まることに注意してください。
let stringArray = new Array("one", "two", "three");
stringArray[0]; // => "one"
stringArray[1]; // => "two"
stringArray[2]; // => "three"
let numericArray = [1, 2, 3];
numericArray[0]; // => 1
numericArray[1]; // => 2
numericArray[2]; // => 3
配列のプロパティ
配列には、配列の要素数を返すlengthというプロパティがあります。
lengthプロパティを使って配列の全要素にアクセスするには、forループ文を使用します。
let stringArray = new Array("one", "two", "three");
console.log(stringArray.length) // => 3
for (var i = 0; i < stringArray.length ; i++) {
console.log(stringArray[i]);
}
// "one"
// "two"
// "three"