我有点困惑,如何创建公共(public)和私有(private)成员。
到目前为止我的代码模板是这样的:
(function()){
var _blah = 1;
someFunction = function() {
alert(_blah);
};
someOtherFunction = function() {
someFunction();
}
}();
最佳答案
您可能想要使用 Yahoo Module Pattern :
myModule = function () {
//"private" variables:
var myPrivateVar = "I can be accessed only from within myModule."
//"private" method:
var myPrivateMethod = function () {
console.log("I can be accessed only from within myModule");
}
return {
myPublicProperty: "I'm accessible as myModule.myPublicProperty."
myPublicMethod: function () {
console.log("I'm accessible as myModule.myPublicMethod.");
//Within myProject, I can access "private" vars and methods:
console.log(myPrivateVar);
console.log(myPrivateMethod());
}
};
}();
您在定义 myPrivateVar
和 myPrivateMethod
的地方定义私有(private)成员,在定义 myPublicProperty
和 myPublicMethod
的地方定义公共(public)成员> 已定义。
您可以按如下方式简单地访问公共(public)方法和属性:
myModule.myPublicMethod(); // Works
myModule.myPublicProperty; // Works
myModule.myPrivateMethod(); // Doesn't work - private
myModule.myPrivateVar; // Doesn't work - private
关于javascript - 如何创建公共(public)和私有(private)成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2803323/