一、闭包
二、两种表现
1.函数作为参数被传递;
2.函数作为返回值被返回;
三、闭包的使用
自由变量的查找,是在函数定义的地方,向上级作用查找,不是在函数执行的地方;
四、闭包的优缺点
1.优点:
①可以从内部函数访问外部函数的作用域中的变量,且访问的变量长期驻扎在内存中,可供之后使用;
②避免变量污染全局;
③把变量存到独立的作用域,作为私有成员存在;
2.缺点:
①对内存消耗有负面影响,因内部函数保存了对外部变量的引用,导致无法被垃圾回收,增大了内存使用量,所以使用不当会导致内存泄漏;