js闭包

1.闭包的三个条件

(1)函数内嵌套函数,外部函数直接或间接返回内部函数
(2)内部函数可以引用外部函数的参数或变量
(3)形成一个不会被销毁的函数空间,也就是说参数和变量不会垃圾回收机制回收
2.什么是闭包空间
满足了以上三个条件,我们就管外部函数的执行空间叫做闭包空间,把返回的内部函数叫做外部函数的闭包函数

3.闭包的特点
优点:
(1)延长了变量的生命周期
(2)可以访问函数内部的私有变量
(3)保护了私有变量
缺点:
因为闭包的执行空间不会被销毁,所以会一直占据内存,可能会造成内存溢出,因此不到万不得已不要使用闭包。
4.作用
当需要延长变量的生命周期的时候,或者需要访问函数的私有变量时使用

闭包代码:

//外部函数a
 function a() {
      var num = 100
//内部函数b
      return function b() {
        console.log(num)
      }
    }
var res=a();//接受到内部函数b
res();//执行函数b,输出num

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值