—闭包是 包含被引用变量(函数)的对象
—闭包的产生:
-当一个嵌套的内部(子)函数引用了嵌套在外部(父)函数的变量(函数)时,
就产生了闭包
—闭包产生的条件:
-函数嵌套
-内部函数引用了外部函数的数据(变量/函数)
—闭包的作用:
-使用函数内部的变量在函数执行完后,仍然存活在内存中(延长了局部变量的生命周期)
-让函数外部可以操作(读写)到函数内部的数据(变量/函数)
—闭包的生命周期:
-产生:在嵌套内部函数定义执行完时就产生了(不是在调用)
-死亡:在嵌套的内部函数成为垃圾对象时
—闭包的缺点:
-函数执行完后,函数内的局部变量没有释放,占用内存时间会变长
-容易造成内存泄漏