1. 配列を理解する
配列は、特定の種類のデータのコレクションです。データ型は、整数、文字列、またはオブジェクトです。
Javascript は多次元配列をサポートしていませんが、配列にはオブジェクトを含めることができるため (配列もオブジェクトです)、配列は互いに入れ子にすることで多次元配列と同様の機能を実現できます。
1.1 配列の定義
要素が 10 個ある配列を宣言する
var a = 新しい配列(10);
この時点で、10 個の要素を含む a 用のメモリ空間が開かれています。たとえば、配列名に [添え字] を付けて a[2] と呼びます。ただし、この時点では要素は初期化されていません。呼び出しは未定義を返します。
次のコードは変数配列を定義し、値を割り当てます。
var a = 新しい配列();
a[0] = 10;
a[1] = "ああ";
a[2] = 12.6;
前述したように、オブジェクトは次のコードのように配列に配置できます。
var a = 新しい配列();
a[0] = true;
a[1] = document.getElementById("テキスト");
a[2] = {x:11, y:22};
a[3] = 新しい配列();
配列はインスタンス化時に値を直接割り当てることができます。たとえば、
var a = 新しい配列(1, 2, 3, 4, 5);
var b = [1, 2, 3, 4, 5];
a と b は両方とも配列ですが、b は暗黙の宣言を使用して別のインスタンスを作成します。このとき、alert(a==b) を使用すると false が表示されます。
1.2 多次元配列
実際、JavaScript では多次元配列をサポートしていません。JavaScript で var a = new Array(10,3) を使用すると、dim a(10,3) を使用して多次元配列を定義できます。ただし、前述したように、配列にはオブジェクトを含めることができるため、たとえば配列内の要素を配列として宣言できます。
var a = 新しい配列();
a[0] = 新しい配列();
a[0][0] = 1;
alert(a[0][0]); //ポップアップ 1
宣言時に値を代入する
var a = 新しい配列([1,2,3], [4,5,6], [7,8,9]);
var b = [[1,2,3], [4,5,6], [7,8,9]];
効果は同じで、a は通常のインスタンス化を使用し、b は暗黙的な宣言を使用し、結果は多次元配列になります。
1.3 配列リテラル
これを中国語で何と呼ぶのかよくわかりませんが、テキスト配列ですか?
配列と言えば、配列リテラルについて話さなければなりません。オブジェクトには固有のプロパティとメソッドがあり、配列はサブスクリプトを通じて取得されます。値、配列リテラルは配列と非常に似ていますが、どちらも特定のデータ型のコレクションです。ただし、配列リテラルは基本的にオブジェクトであり、その宣言と呼び出しは配列とは異なります。
var aa = 新しいオブジェクト();
aa.x = "猫";
aa.y = "晴れ";
alert(aa.x); //猫をポップアップします。
単純なオブジェクトを作成します。通常、呼び出しは aa.x を介して行われます。それが配列リテラルとして使用される場合、alert(aa["x"]) も cat をポップアップします。
var a = {x:"猫", y:"晴れ"};
alert(a["y"]); //晴れた日をポップアップします。
これはオブジェクトを作成する別の方法ですが、結果は同じです