我有一种感觉,我错过了一些明显的东西。我正在从我的 javascript 模块返回一个变量,但它一直未定义。
这是模块:
var MyNs = MyNs || {};
MyNs.Global = function () {
var privateTestVar;
var init = function () {
if (privateTestVar == null ) {
privateTestVar = "this is a test" ;
console.log( 'Init: ' + privateTestVar);
}
};
var Public = {
init: init,
TestVar: privateTestVar
}
return Public;
} ();
这是电话:
MyNs.Global.init();console.log( 'Called: ' +MyNs.Global.TestVar);
init 函数中的 console.log 工作正常并返回值,但其他控制台日志返回 undefined。我完全想念它。任何帮助,将不胜感激。
更新: 我已经将代码更改为:
var privateTestVar = function () { return 'Test!'; }
var Public = {
TestVar: privateTestVar
}
以及它的变体,但它会将这个确切的文本返回到控制台:“function () { return 'Test!'; }”