[英]Access private static object and method
我正在阅读有关在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;
}();
我一直在玩这种结构,但我想知道如何做一些事情。
如何从constructor.publicStaticMethod
访问privateStaticVariable
或privateStaticMethod
?
如果我创建第二个公共方法,如constructor.secondPublicStaticMethod = function(){};
,我如何从constructor.publicStaticMethod
访问它?
如果我要实例化此对象,我如何从constructor
访问所有静态属性和方法?
如何从
constructor.publicStaticMethod
访问privateStaticVariable
或privateStaticMethod
您可以简单地使用它们的名称来访问它们,因为它们是constructor.publicStaticMethod
中的封闭变量,因为closure属性 。
如果我创建第二个公共方法,如
constructor.secondPublicStaticMethod = function(){};
,我如何从constructor.publicStaticMethod
访问它
由于secondPublicStaticMethod
是在constructor
对象上定义的constructor
,因此您可以像constructor.secondPublicStaticMethod
一样简单地调用它。
如果我要实例化此对象,我如何从
constructor
访问所有静态属性和方法
这与上面提到的类似。 您只需分别编写privateStaticVariable
和privateStaticMethod
即可访问privateStaticVariable
和privateStaticMethod
。 和上定义的函数constructor
可以访问constructor.publicStaticMethod
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.