考虑:
var object = { foo: {}, bar: {}, baz: {} }
我该怎么做:
var first = object[0]; console.log(first);
显然,这不起作用,因为第一个索引名为foo,而不是0。
foo
0
console.log(object['foo']);
可以,但是我不知道它的名字叫foo。它可以命名为任何东西。我只想要第一个。
如果对象的顺序很重要,则应修改JSON模式以将对象存储在数组中:
[ {"name":"foo", ...}, {"name":"bar", ...}, {"name":"baz", ...} ]
或许:
[ ["foo", {}], ["bar", {}], ["baz", {}] ]
正如Ben Alpert指出的那样,Javascript对象的属性是无序的,并且如果希望它们按与对象常量中指定的顺序相同的顺序枚举,则代码将被破坏-没有“first”属性。