連想配列

配列のキーと値を変数のリストで持つというデメリットがある
配列の中に情報を持つことで、変数の数が変わっても追加削除か簡単に行える。
単純な配列にもそれぞれの要素には0から始まるキーが自動的に割り当てられている

連想配列とは

単純配列に割り当てられているような自動的に割り当てられる数字キーの代わりに
任意の文字列を割り振ることができる。
任意指定できることにより、格納されている値が何なのか簡単に連想できるようになっている。
また、配列の要素からある値を探し出したい場合でも、キーを指定しやすくなる。

文法

let player = {};
配列が[]で囲むのに対し、連想配列は{}を使用する。
配列と同様に宣言時に代入も行えるが、キーには文字列しか使用できない
let player = {name: "player",team: "team"};

要素の追加

playerオブジェクトにuniNumberという要素を追加7を代入
player.uniNumber = 7;
playerオブジェクトにnationという要素にPortugalを代入
player["nation"] = "Portugal";

また連想配列の要素として、さらに配列を持たせることも可能です。
let hist = [ "Sporting", "Man United", "Real Madrid" ];
player.history = hist;
console.log(player.history[0]);

連想配列のループ処理

for in

for(let k in player){
console.log("項目:" + k);
console.log("内容:" + player[k]);
}
ループの中で、連想配列のキーに指定した文字列は、上記の場合kで取り出すことができる
また連想配列の要素の値はplayer[k]でアクセスができる。