次の方法で共有


JScript の Array オブジェクト

更新 : 2007 年 11 月

Array オブジェクトは、関連するデータをグループ化する変数です。インデックスまたは添字と呼ばれる一意な数字で、配列内の各データを参照します。配列に格納されたデータにアクセスするには、配列識別子とインデックスを添字演算子の "[]" で組み合わせます。たとえば theMonths[0] のように指定します。

配列の作成

新しい配列を作成する場合は、new 演算子と Array コンストラクタを使用します。次の例では、配列コンストラクタを使用して長さが 12 の配列を作成し、作成した配列にデータを入力しています。

var theMonths = new Array(12);
theMonths[0] = "Jan";
theMonths[1] = "Feb";
theMonths[2] = "Mar";
theMonths[3] = "Apr";
theMonths[4] = "May";
theMonths[5] = "Jun";
theMonths[6] = "Jul";
theMonths[7] = "Aug";
theMonths[8] = "Sep";
theMonths[9] = "Oct";
theMonths[10] = "Nov";
theMonths[11] = "Dec";

Array キーワードを使用して配列を作成すると、JScript ではその配列に length プロパティが割り当てられます。数値を指定しない場合、長さは 0 に設定され、配列にはエントリが含まれません。数値を指定すると、長さはその数値に設定されます。複数のパラメータを指定すると、パラメータは配列のエントリとして使用されます。また、パラメータの数が length プロパティに割り当てられます。次に例を示します。これは上記の例と同じ内容です。

var theMonths = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", 
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec");

配列リテラルを使用して配列にデータを入力することもできます。詳細については、「配列データ」を参照してください。

Array オブジェクトは "疎" 配列です。配列に 0、1、および 2 の 3 つの要素がある場合、要素 3 ~ 49 がなくても要素 50 が存在できます。Array オブジェクトに要素を追加すると、length プロパティの値は自動的に変更されます。JScript の配列のインデックスは、常に 1 ではなく 0 から開始されます。そのため、length プロパティは、常に配列の最大のインデックスより 1 だけ大きい数値になります。

配列の expando プロパティの使用方法

配列オブジェクトは、JScript Object オブジェクトに基づく他のオブジェクトと同様に、expando プロパティをサポートします。expando プロパティは、配列に対して動的に追加および削除できる、配列のインデックスに似た新しいプロパティです。配列のインデックスは整数ですが、expando プロパティは文字列です。また、expando プロパティを追加または削除しても、length プロパティは変化しません。

次に例を示します。

// Initialize an array with three elements.
var myArray = new Array("Hello", 42, new Date(2000,1,1));
print(myArray.length); // Prints 3.
// Add some expando properties. They will not change the length.
myArray.expando = "JScript";
myArray["another Expando"] = "Windows";
print(myArray.length); // Still prints 3.

型指定された配列

上で示した theMonths 配列をより速く作成するには、型指定された (ネイティブな) 配列を作成します。この例では、文字列型の配列になります。

var theMonths : String[] = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

型指定された配列の要素には、JScript の配列オブジェクトの要素よりも速くアクセスできます。型指定された配列は、他の .NET Framework 言語の配列と互換性を持つ、タイプ セーフな配列です。

JScript の Array オブジェクトは非常に柔軟で、リスト、キュー、スタックなどの用途に適しています。ネイティブな配列は、サイズが固定された同一の型の項目を格納する場合に適しています。一般的に、Array オブジェクトの特殊な機能 (動的なサイズ変更など) が必要でない場合は、型指定された配列を使用してください。

すべての非破壊的な JScript の Array メソッド (長さを変更しないメソッド) は、型指定された配列で呼び出すことができます。

参照

参照

Array オブジェクト

その他の技術情報

組み込みオブジェクト