手记

Javascript闭包理解

Javascript 闭包
闭包是什么?

闭包就是在一个函数内返回另一个函数,这个函数可以访问函数内部的变量同时这个函数也被外部调用

function func(){
    var a=0;//函数内部变量
    return function(b){
        a = a + b;
        return a;
    }
}
var c = func(2);
var d = c(3);

以上例子中,在函数func内部定义了一个变量a,同时函数func返回了另一个匿名函数,在这个匿名函数中引用了变量a,因此在调用完func函数后,变量a并不会立即释放

用途

闭包的用途在于可以访问函数的内部变量

缺点

由于闭包的存在,使函数内部的变量在函数调用完成之后不会立即释放,如果滥用有可能会造成内存溢出的问题,所以在使用闭包的时候要注意这一点

0人推荐
随时随地看视频
慕课网APP