简单认识 JavaScript 闭包

函数的闭包就是父函数嵌套子函数,子函数可以引用父函数的变量,而父函数不可以使用子函数的变量。

成都创新互联专注于企业营销型网站建设、网站重做改版、张家口网站定制设计、自适应品牌网站建设、html5购物商城网站建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为张家口等各大城市提供网站开发制作服务。

function outerFun() {
  let a = 10;
  return function (x) {
    if (x) {
      return (a = x);
    } else {
      return a;
    }
  };
}

let innerFun = outerFun();
let b = innerFun(10);
let c = innerFun(20);
let d = innerFun();

console.log(b, c, d); // => 10 20 20

第二个innerFun修改父函数变量a之后,第三个innerFun直接获取结果,发现返回的是 20,说明返回的是上一次的结果。因此,函数闭包可以保存父函数的变量。

单个函数内定义的变量,使用之后就销毁,不保存函数的变量。

function fun(x) {
  let a = 10;
  if (x) {
    return (a = x);
  } else {
    return a;
  }
}

let b = fun(10);
let c = fun(20);
let d = fun();

console.log(b, c, d); // => 10 20 10

发现每一次使用都是新的变量,执行一次就释放,也不保存,重新执行就重新赋值变量a


当前题目:简单认识 JavaScript 闭包
浏览路径:http://bzwzjz.com/article/dsojghs.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 公司网站建设 重庆企业网站建设 网站制作 成都网站建设流程 定制网站建设 成都网站建设 成都网站制作 成都网站制作 营销型网站建设 高端网站设计 企业网站建设 成都网站建设 营销型网站建设 成都网站设计 成都网站设计 成都网站设计 广安网站设计 成都网站设计公司 手机网站设计 成都网站建设 网站制作公司