假设您有一个非常简单的数据结构:
(personId, name)
...并且您想将其中一些存储在javascript变量中。如我所见,您有三个选择:
// 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'}
};
如果您要存储(或期望您可能拥有)多个“价值”部分(例如,增加他们的年龄等),那么第二或第三种选择显然是可行的方法,因此,为了论证,假设此结构永远不再需要任何数据值。您选择哪一个,为什么?
编辑:该示例现在显示最常见的情况:非顺序ID。
var people = [[1, 'Joe'],[3, 'Sam'],[8,'Eve']];
它不能让您通过id快速查找,但是是存储数据的另一种选择)