js闭包是什么?

JavaScript08

js闭包是什么?,第1张

js闭包是一个拥有许多变量和绑定了这些变量的环境的表达式。

闭包的特点:

1、作为一个函数变量的一个引用,当函数返回时,其处于激活状态,一个闭包就是当一个函数返回时,一个没有释放资源的栈区。

2、js闭包允许使用内部函数,这些内部函数可以访问它们所在的外部函数中声明的参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。

扩展资料:

js闭包实例:

1、函数内部可以直接读取全局变量

<script type="text/javascript">

var n=100

function parent(){

alert(n)

}

2、读取函数内的局部变量

parent()//100

</script>

function parent(){

m=50

}

parent()

alert(m)//50

参考资料来源:百度百科:javascript闭包

在这个函数中真正执行的函数主题是(function($, window, undefined) {

//其他代码

}),而后面(this.jQuery || this.lhgcore, this)就是传入的参数,

其实可以这样理解

function wpfworldcom($,window,undefined)

{

//其他代码

}

wpfworldcom(this.jQuery||this.lhgcore,this)