从JSON节点js读取键值

时间:2015-07-16 12:27:15

标签: javascript json node.js

我和下一个json类似:

{
    'igor': {'password': '12345678', 'color': 'white'),
    'ruslan': {'password': '87654321', 'color': 'black')
}

还有变量

var name = 'igor';

如何获取密码值,使用此变量来检测名称?我接下来试过了:

obj[name['password']]

但它返回undefined;也尝试过:

obj.name['password']

它也返回undefined。我应该如何获得这个价值?感谢。

2 个答案:

答案 0 :(得分:1)

As Nano评论说,要访问密码"对于具有键的对象" igor"你需要使用obj[name]['password']。这是因为你有两个对象,其中包含" igor"作为关键,一个作为" ruslan"作为关键。你也可以使用

var igor = obj['igor'];
var igorsPassword = igor['password'];

此外,unixarmy的形式没有错,以下是正确的。

var igor = obj.igor;
var igorsPassword = igor.password;

尽管如此,如果属性名称中包含空格,则必须使用obj['property name']表单进行访问,因为obj.property nameproperty之间的空格不能使用name。 {1}}在不在字符串/正则表达式中时用作语法分隔符。

答案 1 :(得分:0)

您的JSON示例无效!

无论如何,您可以使用以下语法:obj[name].property