首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >访问私有静态对象和方法

访问私有静态对象和方法
EN

Stack Overflow用户
提问于 2015-10-01 11:13:12
回答 1查看 38关注 0票数 1

我读到了在javascript中创建对象的最佳方法,并找到了一个有趣的解决方案here

代码语言:javascript
运行
复制
var Foo = function()
{

    var privateStaticMethod = function() {};
    var privateStaticVariable = "foo";

    var constructor = function Foo(foo, bar)
    {
        var privateMethod = function() {};
        this.publicMethod = function() {};
    };

    constructor.publicStaticMethod = function() {};

    return constructor;
}();

我一直在玩这个结构,但我想知道我怎么能做一些事情。

  • 如何从privateStaticVariableprivateStaticMethod内部访问constructor.publicStaticMethod
  • 如果我创建了像constructor.secondPublicStaticMethod = function(){};这样的第二个公共方法,如何从constructor.publicStaticMethod内部访问它?
  • 如果要实例化此对象,如何从constructor中访问所有静态属性和方法?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-01 11:20:05

如何从privateStaticVariableprivateStaticMethod内部访问constructor.publicStaticMethod

您只需使用它们的名称就可以访问它们,因为由于使用了constructor.publicStaticMethod,所以它们是the closure property中的封闭变量。

如果我创建了像constructor.secondPublicStaticMethod = function(){};这样的第二个公共方法,如何从constructor.publicStaticMethod内部访问它?

因为secondPublicStaticMethod是在constructor对象上定义的函数,所以您可以像调用constructor.secondPublicStaticMethod一样调用它。

如果要实例化此对象,如何从constructor中访问所有静态属性和方法?

这与上述类似。只需分别编写privateStaticVariableprivateStaticMethod即可访问privateStaticVariableprivateStaticMethod。而定义在constructor上的函数可以用constructor.publicStaticMethod访问。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32886169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档