繁体   English   中英

javascript:作用域和访问嵌套实体

[英]javascript: scoping and accessing nested entities

如果我们有此设置:

if (typeof(A) === 'undefined')
    A = {};

A.B = new function () {
   ....
   this.C = function () {
      ....
   }
}

从最外面的上下文(范围)访问C函数的一些标准方法是什么? 我确实可以访问js源,因此可以相应地对其进行修改。

您不应该使用new function(){}。 原因: 死亡竞赛:自执行匿名功能-vs-“新功能”

但是无论如何,由于您尚未编写此代码,因此您只是在编辑插件文件,因此可以使用ABC()访问C

    <script>
        if (typeof(A) === 'undefined')
            A = {};

        A.B = new function () {
            this.C = function () {
                alert("I am c");
            }
        }

        A.B.C();
    </script>

仅使用此处提供的代码,A是全局变量 ,因此您可以在任何范围内以ABC()的形式访问它;

if(typeof(A) === 'undefined') {
   A = {};
}
A.B = function() {

    this.C = function() {
        alert('A.B.C was called');
    };
};

A.B.C();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM