立即执行函数的两种写法及闭包

Posted 前端++

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了立即执行函数的两种写法及闭包相关的知识,希望对你有一定的参考价值。

//立即执行函数的括号可以包括函数加参数,可以匿名也可以不匿名
//eg1:(function (){}())
//eg2:(function(){})()

 

 

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var test = (function(a) {
alert("立即1"+a);
this.a = a;
return function(b) {
alert("立即2"+a);
return this.a + b;
}
}(function(a, b) {
alert("立即3"+a);
return a;
}(1, 2)));

(function ceshi(c){
alert(c)
}(45));

console.log(test(4)); //输出5



//执行顺序

//31
//11
//45
//21
</script>
</body>
</html>

 

以上是关于立即执行函数的两种写法及闭包的主要内容,如果未能解决你的问题,请参考以下文章

javascript立即执行函数表达式(IIFE)

JavaScript初阶--------函数闭包立即执行函数

JavaScript 学习-46.立即执行函数

JavaScript:立即执行函数

js中(function(){…})()立即执行函数写法理解

js 立即执行函数