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 来源: CSDN 作者: 渴望叮当猫的鱼 链接: https://blog.csdn.net/qq_44454898/article/details/104486657