怎么更好的理解JS闭包,希望举个例子,还有应用场景

2025-03-01 23:06:49
推荐回答(1个)
回答1:

闭包是 JavaScript 一个非常重要的特性,这意味着当前作用域总是能够访问外部作用域中的变量。

本人简单的理解: 闭包就是一个访问父函数局部变量的函数;

例子如下:
// 来源:http://www.zhihu.com/question/31383111
//最简单:一个父函数
function superFn(){
// 局部变量
var _super_a = 1;

var subFn = function(){
// _super_a++;
alert('_super_a: ' + _super_a);
}

return subFn;
}

// superFn() 得到的是subFn,superFn()()等于subFn()
superFn()();

作者:萧强