JS嵌套对象访问全局变量



我的javascript对象定义为以下...

    var f = {
        test: 'myTestContent',
        app: {
            base: {
                action: function () {
                    alert(test);
                }            
            }
        }
    };
    f.app.base.action();

问题是我无法访问 f 实例中定义的 test 变量。是否可以在此上下文中从嵌套对象访问变量?

目前我得到 test 不确定。有什么建议么?谢谢!

test未在全球定义。您必须使用适当的参考:

alert(f.test);

应该工作。

test不是全局变量,而是 f的属性。所以你想要:

var f = {
    test: 'myTestContent',
    app: {
        base: {
            action: function () {
                alert(f.test);  // Notice this line.
            }            
        }
    }
};
f.app.base.action();

就像您在最后一行中访问f.app一样访问它。

相关内容

  • 没有找到相关文章

最新更新