【javascript】オブジェクト in 配列
どうも。
オブジェクトって本当に便利ですよね〜、、、関係代名詞で言うthatみたいな。(分かりにくい)
皆さんオブジェクトにインデックスを持たせたくなった(配列にしたくなった)ことってあります??私はあります。
例えば、30人クラスで各教科のテストの点数を持ちたくなった時とか。
そういった場合、各教科ごとに配列を作ってテストの点数を持つのもいいですが、整合性が保てなくなる可能性がありますよね。
例えば、出席番号12番の生徒が数学のテストだけ受けていなかった場合、数学のテストの配列の長さは29になってしまいます。(12番目の要素をnullか何かにすれば済むんですが、それは一旦置いといて)
それより、生徒ごとに各教科の点数を属性として持つオブジェクトを作って、それを配列化すればいいですよね。
分かりやすく表現するとこんな感じ。↓
案① 各教科ごとの点数の配列を持つ
score_math = [ ];
score_japanese = [ ];
…
// 出席番号12番の生徒の点数
score_math[11] = 80;
score_japanese[11] = 90;
…
案② 各教科の点数を属性として持つオブジェクトの配列を作成する
student_info = [ ];
// 各生徒の情報を格納
student_info[11] = {
score_math = 80,
score_japanese = 90,
...
};
どちらでも実現は可能なのですが、案②の方がまあ構造としてはふさわしいのかなーと思いました。
ではではまたの機会に。
(最近投稿出来ていませんが、やめたわけではないのでご安心?を、、)