如何在对象中使用嵌套函数

时间:2009-01-09 22:58:28

标签: javascript object

假设您使用以下结构:

var Args = new Object();
Args.Age = '10';
Args.Weight = '10';

Args.GetAge = function() {
    return 'I am ' + Age + ' years old';
}

Args.GetWeight = function() {
    return 'I weigh ' + Weight + ' pounds';
}

这很有效。但是是否可以使用泛型,因此您不必为每个变量创建函数?例如,类似以下内容:

Args.GetValue = function(i) {
    return this.i;
}

这似乎不起作用,但我甚至不知道这是否可行。有人知道这个谜语的答案吗?

2 个答案:

答案 0 :(得分:4)

您可以通过[]表示法访问属性:

alert(Args["Age"]);

并且,如下所述,您也可以通过.Age或.Weight:

读取值
alert(Args.Age);

这看起来很明显,所以我以为你在找别的东西。

顺便说一句,您可以将对象创建简化为:

var args = { Age : '10', Weight : '10' };

答案 1 :(得分:1)

var Args = {};
Args.Age = '10';
Args.Weight = '10';

alert(Args.Age);
alert(Args.Weight);

它们既可以读/写,也不需要setter / getters。