为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript 闭包

Javascript 闭包

阿男呦 2017-06-30 23:24:20
闭包是什么,有点不理解,希望大神可以发一下简单的代码给我解释一下,感激不尽
查看完整描述

1 回答

?
侠客岛的含笑

TA贡献552条经验 获得超285个赞

闭包基本格式
function a(i){
  return function(){
    return i+1
  }}
普通遍历
var data = [];
for (var k = 0; k < 3; k++) {
  data[k] = function () {
    alert(k);
  };
}
data[0](); // 3, 而不是0
data[1](); // 3, 而不是1
data[2](); // 3, 而不是2
闭包后
var data = [];
for (var k = 0; k < 3; k++) {
  data[k] = (function _helper(x) {
    return function () {
      alert(x);
    };
  })(k); // 传入"k"值
}

data[0](); // 0
data[1](); // 1
data[2](); // 2


查看完整回答
2 反对 回复 2017-07-01
  • 1 回答
  • 2 关注
  • 1770 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信