js中的自执行匿名函数 (IIFEs)

今天突然看到了IIFEs,表示一脸萌比,这是什么,他是谁,在js中是什么样子,我就探究了一下,哦哦,原来如此。

IIFEs:全称 Immediately-Invoked Function Expressions;
我们一般称它为 自执行匿名函数,这样大家就知道他是什么了。

存在的形式一般可以这样:

(function() {})();
[ function() {}() ];
 
~ function() {}();
! function() {}();
+ function() {}();
- function() {}();
 
delete function() {}();
typeof function() {}();
void function() {}();
new function() {}();
new function() {};
 
var f = function() {}();
 
1, function() {}();
1 ^ function() {}();
1 > function() {}();

关于IEFEs,还需要知道的三件事。
1、如果你给函数分配了变量,就不需要将整个函数括放在括号里,因为它已经是一个表达式

var sayWoohoo = function () {
alert('Woohoo!');
}();

2、IIFE末尾的分号是必须的,否则代码可能会不正常运行
3、可以给IIFE传递参数(毕竟也是一个函数),可以参考下面的示例:

(function (name, profession) {
  console.log('My name is'  + name + ' I'm an'  + profession );
})(Jackie Chan, actor);

最后附上此文全部内容的链接地址:http://blog.csdn.net/u010403387/article/details/47724995

你可能感兴趣的:(js中的自执行匿名函数 (IIFEs))