— y2sunlight 2021-10-11
配列は同じデータ型の集合を表し、配列内の各要素には番号(インデックス)がつ付けられています。このインデックスは他言語と同様 0 から始まります。配列には任意のデータ型を格納することが出来るので、プリミティブ型はもちろんオブジェクトや関数の配列を作る事も出来ます。
配列の生成には Arrayオブジェクトのコンストラクタ Array() を使用します。Arrayオブジェクトの詳細についてはこちらをご覧下さい。
1 2 3 4 5 6 |
let name_list = new Array(); // 文字列の配列 name_list[0] = 'sato' ; let age_list = new Array(); // 数の配列 age_list[0] = 18; let student_list = new Array(); // オブジェクトの配列 student_list[0] = { name: 'sato' , age:18 }; |
配列リテラルは全体をブラケット([])で囲みその中に値をカンマで区切って設定します。ブラケット内の値は先頭から順に 0 から始まるインデックスが割り当てられます。
1 2 3 4 5 6 7 |
let name_list = [ 'sato' , 'suzuki' , 'takahashi' ]; // 文字列の配列リテラル let age_list = [18, 17, 16]; // 数の配列リテラル let student_list = [ // オブジェクトの配列リテラル { name: 'sato' , age:18 }, { name: 'suzuki' , age:17 }, { name: 'takahashi' , age:16 }, ]; |
配列を使って各要素の操作を行うには、制御構造として古くから for文が使われます。for文の詳細についてはこちらをご覧下さい。
1 2 3 4 5 6 7 8 |
let name_list = [ 'sato' , 'suzuki' , 'takahashi' ]; for ( let i=0; i<name_list.length; i++) { console.log(name_list[i]); } // 結果 // sato // suzuki // takahashi |
.length は配列のサイズを返す Arrayオブジェクトのプロパティです。
ES2015*2015から配列用の for文として for-of文が使えるようになりました。詳細はこちらをご覧下さい。
1 2 3 4 |
let name_list = [ 'sato' , 'suzuki' , 'takahashi' ]; for ( let name of name_list) { console.log(name); } |