我正在尝试将 JavaScript 对象文字包装在自执行匿名函数中。下面的第一个代码示例工作正常,但第二个没有,我不确定为什么?
作品:
(function(){
return MyApp = {
init: function() {
console.log('MyApp init');
}
}
})();
不工作:
(function(){
var MyApp = {
init: function() {
console.log('MyApp init');
}
}
return MyApp;
})();
据我了解,SEAF 应该执行并立即返回。这就是为什么第一个示例返回 MyApp 作为我可以与之交互的对象的原因。我认为将 MyApp 分配给 SEAF 内的变量然后返回它会做同样的事情,但在:
Uncaught ReferenceError: MyApp is not defined
为什么?