在JS对象数组中,我应该使用键来标识每个对象吗?

时间:2014-07-27 07:58:49

标签: javascript arrays

我还在学习javascript模式,我很好奇这个。

如果我有一个对象数组,我应该让对象数组没有键(例A),还是使用它们的键(例B)?

没有任何键的对象数组:

var soylent_green_candidates = [{
  id: 12341,
  name: "Don",
  gender: "Male",
  weapon_of_choice: "Kangaroo Cannon"
},
{
  id: 24325,
  name: "Jimmy",
  gender: "Male",
  weapon_of_choice: "Sushi Blaster"
},
...
]

或使用唯一ID作为键的对象数组:

var soylent_green_candidates = [ 
12341: {
  name: "Don",
  gender: "Male",
  weapon_of_choice: "Kangaroo Cannon"
},
24325: {
  name: "Jimmy",
  gender: "Male",
  weapon_of_choice: "Sushi Blaster"
},
...
]

1 个答案:

答案 0 :(得分:1)

你的第二个例子无效,所以应该让问题进入睡眠状态。

在Javascript中,您可以选择数组,这些数组已经过排序,但基本上是" key less"。每个数组条目只能通过其数字索引句点访问 另一个选项是 objects ,它们没有保证顺序但是被任意值键入。

['foo', 'bar', 'baz']
{ foo : 'bar', baz : 42 }

您可以根据这两个标准,键的顺序和要求做出选择。

(注意:虽然可以使用任意数字索引作为数组,但您无法使用文字语法[..]来实现此目的,而且&# #39;通常不是一个好主意。如果你需要明确的键,你需要对象。)