非常に単純なデータ構造があるとします。
(personId, name)
...そして、これらの多くをjavascript変数に格納したいとします。私が見ているように、3つのオプションがあります。
// a single object
var people = {
1 : 'Joe',
3 : 'Sam',
8 : 'Eve'
};
// or, an array of objects
var people = [
{ id: 1, name: 'Joe'},
{ id: 3, name: 'Sam'},
{ id: 8, name: 'Eve'}
];
// or, a combination of the two
var people = {
1 : { id: 1, name: 'Joe'},
3 : { id: 3, name: 'Sam'},
8 : { id: 8, name: 'Eve'}
};
2番目または3番目のオプションは、格納する「値」の部分が複数ある(またはあると予想される)場合(たとえば、年齢などを追加する場合)に明らかに進む方法です。したがって、議論のために、この構造で必要なデータ値がこれ以上なくなると仮定しましょう。どちらを選びますか、そしてその理由は何ですか?
編集:この例は、最も一般的な状況を示しています:非シーケンシャルID。
var people = [[1, 'Joe'],[3, 'Sam'],[8,'Eve']];
これはIDによる高速ルックアップを提供しませんが、データを格納するための別のオプションです)