天天看点

剖析原理:JS基础篇——立即执行函数1.什么是立即执行函数(IIFE)

1.什么是立即执行函数(IIFE)

在了解立即执行函数之前先明确一下函数声明、函数表达式及匿名函数的形式,如下图两种常见方式:

//1. 匿名函数后面跟一个小括号, 整个包裹在一个括号运算符中
				(function() {
					//...
				}())

//2. 匿名函数包裹在一个括号运算符中, 后面跟一个小括号
				(function() {
					//...
				})()
           

建议使用第一种,这是W3C给出的标准

二、延伸(其他方式)

注:

只有表达式才能被执行符号执行!
// 第一种方式
 var test = function (){
				 	console.log("Aright?");
				 }();
				 
// 第二种方式(添加 + - !)
 + function test(){
				 	console.log("Bright?");
				 }();	
				 
 // 第三种方式(W3C标准)
(function test(){
				 	console.log("Cright?");
				 }();
				 )	
//由于立即执行函数把函数命名给“消除”了,所以缩写成下面
(function (){
				 	console.log("Cright?");
				 }();
				 )				 
           

注意点:

1.立即执行函数会立即执行当前函数且销毁,所以执行后再也找不到对应函数,减少内存;

2.立即执行函数有多种方式,尽量使用W3C标准