Javascript自执行函数 (Immediately-Invoked Function Expression)
Posted liangzi4000
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript自执行函数 (Immediately-Invoked Function Expression)相关的知识,希望对你有一定的参考价值。
1. javascript编译器在遇到function这个关键字时,默认认为它是function声明,而不是表达式。
2. 在已声明的function后面加括号,即可调用它。比如,
function foo(){console.log(‘hello javascript.‘)}
foo();
3. 括号里面允许javascript表达式,(function(){console.log(‘hello javascript‘)}), 这样这个匿名函数就是一个表达式,而不是function的声明。根据上面第二点,后面加括号即可执行该函数,即(function(){console.log(‘hello javascript‘)})()。这个写法等价于(function(){console.log(‘hello javascript‘)}()),推荐用这个写法。
在不考虑返回值的情况下,以下方法都是等价的
+function(){console.log(‘hello javascript‘)}()
-function(){console.log(‘hello javascript‘)}()
!function(){console.log(‘hello javascript‘)}()
~function(){console.log(‘hello javascript‘)}()
new function(){console.log(‘hello javascript‘)}
new function(name){console.log(‘hello javascript‘ + name;)}(‘bruce‘)
以上是关于Javascript自执行函数 (Immediately-Invoked Function Expression)的主要内容,如果未能解决你的问题,请参考以下文章