我想重写一个文件以合并公共和私有变量。我正在尝试做这样的事情:
var PrivateFunc = (function() {
//Private Functions
var _iAmPrivate = function(param, args){
//code
}
var _soAmI = function(param){
//code
}
return PrivateFunc;
})();
var PubObj = {
someVar: 1,
getPrivFunc: PrivateFunc,
publicFunc: function(param){
//This doesnt work
this.getPrivFunc._iAmPrivate(someVar, param);
//This doesn't either
getPrivFunc._soAmI(param);
}
};
我是一个“getPrivFunc
未定义”的错误。我认为搬到getPrivFunc
外面PubObj
可以工作,但我遇到了同样的问题。调用PrivateFunc
也给出错误。我觉得这是一个愚蠢的错误,我只是没有看到它。
也许有更好的方法来做到这一点?