js闭包

Posted jimzbom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js闭包相关的知识,希望对你有一定的参考价值。

闭包的含义:闭包说白了就是函数的嵌套,内层的函数可以使用外层函数的所有变量,即使外层函数已经执行完毕(这点涉及javascript作用域链)。

例子

        var a = 11;
        setTimeout(function(){
            alert(a);
        },1000);

 

别外要注意函数的定义和执行的区别, 定义是将实现函数主体并赋给函数变量名, 执行是通过"变量名()"来执行函数

function func1(){
alert(11);
}

function func2(){
alert(22);
}

setTimeout(func1,1000);
setTimeout("func2();",2000);
setTimeout(function(){
alert(33);
},3000);

 

 

参考

http://www.jb51.net/article/24101.htm javascript深入理解js闭包

http://www.jb51.net/article/84217.htm Javascript自执行匿名函数(function() { })()的原理浅析

http://www.jb51.net/article/79238.htm 浅析Javascript匿名函数与自执行函数

以上是关于js闭包的主要内容,如果未能解决你的问题,请参考以下文章

JS闭包的概念

(原创)JS闭包看代码理解

关于JS闭包

js闭包的作用

js闭包

js的闭包