参考参考

时间:2013-06-14 16:17:03

标签: javascript

我有一个对象:

obj = {
    obj1: {
        name: "Test";
    }
}

和功能:

var anon = function(a) {
    alert(obj.a.name);
}

我想以“obj1”作为参数。我是编程的新手所以我认为我应该通过“测试”获得警报,但它不起作用。如何用参数作出参考?

2 个答案:

答案 0 :(得分:4)

您可以这样做:您始终可以访问对象的属性obj[key],这就是我们在这里所做的。

var anon = function(a) {
    alert(obj[a].name);
}

并从内联对象属性definision语法中删除;

obj = {
    obj1: {
        name: "Test"; //<-- Here
    }
}

http://jsfiddle.net/RuCnU/

Link可以为您提供有关对象和键的基本信息。

答案 1 :(得分:1)

var anon = function(a) {
    alert(obj[a].name);
}

当您使用方括号查找对象的属性时,obj.a仅在对象具有名为a的属性时才有效,例如obj = {a: "Test"}