我正在使用以下代码创建:私有属性,私有方法,公共属性,公共方法和公共静态属性。
function ClassA() {
var privateProperty = 'private_default_value';
var privateMethod = function() {
console.log("private method executed ...");
};
this.publicProperty = 'public_default_value';
this.publicMethod = function() {
console.log("public method executed ...");
};
ClassA.publicStaticProperty = "public_static_default_value";
// How to create here: ClassA.privateStaticProperty ?
};
var instance = new ClassA();
instance.publicMethod();
console.log(ClassA.publicStaticProperty);
如何在此类中创建私有静态属性?
这是使用IIFE创建构造函数可见的范围的解决方案ClassA
:
var ClassA = (function(){
var Constructor = function(){
var privateProperty = "private_default_value";
var privateMethod = function() {
console.log("private method executed ...");
};
this.publicProperty = "public_default_value";
this.publicMethod = function() {
console.log("public method executed ...");
};
}
Constructor.publicStaticProperty = 'public_static_default_value';
var privateStaticProperty = "private_static_default_value";
return Constructor;
})();
privateStaticProperty
是“静态的”:只有一个属性。
privateStaticProperty
是“私有的”:您无法从IIFE之外阅读它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句