配列を生成・設定
配列を生成または設定するには、Array
オブジェクトを使用します。
また、配列は短縮構文(Arrayリテラル表記)でも生成・設定が行えます。
なお、Arrayオブジェクトで初期値を格納した配列を作る場合、シングルクォーテーションまたはダブルクォーテーションで値を囲う必要があり、数値を入れたい場合は文字列として生成されることに注意が必要です。
- ※ 意図しない結果が発生するためnew演算子を使用せず、Arrayリテラル表記を使用することをお勧めします。
構文
var foo = new Array([valueN[, valueN...]);
// または
var foo = new Array(size);
// または
var foo = [[valueN[, valueN...]]; // リテラル
new Array([valueN[, valueN...])
引数名 | 型 | 説明 | |
---|---|---|---|
第一引数~ | valueN | any | 最初に設定しておく値 |
new Array(size)
引数名 | 型 | 説明 | |
---|---|---|---|
第一引数 | size | number | 生成する個数(整数) |
リテラル
インデックス | 型 | 説明 | |
---|---|---|---|
0番目~ | valueN | any | 最初に設定しておく値 |
戻り値
生成された配列を返します。
Arrayオブジェクトに個数として引数を指定した場合、生成された配列の値はundefinedとして格納されます。
サンプルコード
JavaScript
// 0個の配列を生成
var foo = new Array();
var bar = []; // リテラル
// 値a、値bが格納された配列を生成
var baz = new Array('apple', 'orange', 'banana');
var qux = ['apple', 'orange', 'banana']; // リテラル
// 10個の値を設定した配列を生成(値はundefinedが格納される)
var quux = new Array(10);
配列の値を取得
配列の値を取得するには、スクエアブラケット([])を使用します。
配列は0から始まるインデックス番号で、nは取得するインデックス番号を指定します。
JavaScript
var arr = ['apple', 'orange', 'banana';
alert(arr[1]); // orange
任意の文字列の連続した配列を生成する場合
Arrayオブジェクトで引数に個数で指定した場合は値にはundefinedが代入されますが、この値を任意の文字にしたい場合はmap
メソッドを使用します。
Arrayオブジェクトはそのままではmapメソッドは使用できませんので、apply
メソッドを使用してmapメソッドを使用できる配列オブジェクトにします。
JavaScript
var foo = Array.apply(null, Array(10)).map(function(v, i) {
return (i + 1) * 10;
});
foo.forEach(function(val) {
alert(val);
});
- ※ mapメソッドはIE8以下では使用できません。