浅谈闭包

1、在函数内部 如果没有用var声明的变量是全局变量

2、什么是闭包

能够访问其他函数内部的变量或者方法

特点:

1、函数嵌套函数

2、必须有return

3、闭包的作用

1、能够访问局部变量或者方法

2、在for循环中可以保留i的值

4、闭包的危害
会占用内存空间 会在IE浏览器下造成内存泄漏

当不用局部的变量或者方法的时候需要进行销毁

5、什么是垃圾回收机制

当一个函数内部的一些方法或者属性没有在全局进行调用的时候,当前函数运行完毕以后就会被回收,下次在调用当前函数的时候函数内部的方法和属性都会被重置,如果一个函数的一些方法和属性在全局进行调用了,那么当前函数不会被销毁,下次在调用当前函数的时候里面的方法和属性不会进行重置

example1:

function fn(){
    var a=10;
    return function(){
        a++;
      console.log(a);
     }
}

var a=fn();

a(); //11
a(); //12

example2:

example3:

转载于:https://www.cnblogs.com/jsjx-xtfh/p/9580425.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值