资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

简单认识 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://cdkjz.cn/article/dsojghs.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220