使用对象存储名称列表

时间:2013-08-02 17:35:40

标签: javascript data-structures

我想知道如何使用对象来存储不同名称的列表,并通过简单地使用密钥来访问它们。 我是否必须使用这样的嵌入式对象。

var f = 
{ 
    0 : { name : "John" }, 
    1 : { name : "Phillip" }
};
console.log(f[1].name);

4 个答案:

答案 0 :(得分:4)

不要过于复杂。你为什么不尝试一个简单的数组?

var f = [
    { name : "John" }, 
    { name : "Phillip" }
];
console.log(f[1].name);

答案 1 :(得分:3)

为什么不只是一个相同的索引数组?您出于某种原因确实需要 name:属性吗?

var names = [ 'John', 'Phillip' ];

而不是names[0].name,这是非常多余的,你只需使用names[0] ......

答案 2 :(得分:1)

他想通过密钥访问它们:

var people = {
    John:{ age:33},
    Bob :{ age:42}
};

现在您可以通过密钥真正访问它们:

console.log(people["John"].age);

或者这种方式(虽然很奇怪):

console.log(people.John.age);

不需要循环,您正在使用javascripts关联语法的强大功能直接索引到您的数据结构中。无需引用任意整数索引。

这绝对有效,但通常你会使用一个更合适的属性来索引,而不仅仅是一个像雇员id这样的名字。

答案 3 :(得分:0)

你可以这样使用

Var names = [
      { 'name' : 'ashwin', age: 18 },
      {'name' : 'jhon', 'age' : 20 }
];

console.log (  names[0].name );