【发布时间】:2014-10-13 07:15:22
【问题描述】:
只有函数表达式可以立即调用:
(function () {
var x = "Hello!!"; // I will invoke myself
})();
但不是函数声明?这是因为函数声明被提升并且已经立即执行了吗?
编辑:我引用的资源
http://benalman.com/news/2010/11/immediately-invoked-function-expression/
【问题讨论】:
-
function x(){} 与 var x=function(){} 相同,并且显式 var “返回” void 而不是赋值。这就是为什么你不能说 alert(var x=1),但你可以说 alert(x=1);功能相同。
标签: javascript function-declaration self-invoking-function function-expression