我有一个JavaScript对象定义如下......
var f = {
test: 'myTestContent',
app: {
base: {
action: function () {
alert(test);
}
}
}
};
f.app.base.action();
问题是我无法访问 f 实例中定义的测试变量。是否可以从嵌套对象访问此上下文中的变量?
目前我测试是未定义的。有什么建议?谢谢!
答案 0 :(得分:4)
test
未在全球范围内定义。你必须使用正确的参考:
alert(f.test);
应该工作。
答案 1 :(得分:2)
test
不是全局变量,而是f
的属性。所以你想要:
var f = {
test: 'myTestContent',
app: {
base: {
action: function () {
alert(f.test); // Notice this line.
}
}
}
};
f.app.base.action();
访问它就像访问最后一行的f.app
一样。