我正在学习JavaScript,这是我的第一周:)
var Module = (function () {
// code
var publicMethod = {};
var privateMethod = function(someStringToBePassed) {
debug("I love USA. "+someStringToBePassed);
}
publicMethod.someFunction = function() {
privateMethod("USA is sexy");
}
return publicMethod;
})();
debug(Module.someFunction());
我正在Sublime中执行此操作。我看到以下结果。
--> I love USA. USA is sexy
--> undefined
请解释为什么我在这里看到未定义。
[Finished in 0.0s]
请告诉我为什么我在结果中看到“未定义”
最佳答案
您不会从someFunction返回任何内容。尝试这个:
现在someFunction返回privateMethod的值。 privateMethod返回构造的字符串。
var Module = (function () {
// code
var publicMethod = {};
var privateMethod = function(someStringToBePassed) {
return "I love USA. "+someStringToBePassed;
}
publicMethod.someFunction = function() {
return privateMethod("USA is sexy");
}
return publicMethod;
})();
debug(Module.someFunction());