1.什么是闭包?
闭包是指有权访问另一函数作用域中的变量的函数。
2.闭包形成的原理?
作用域链,当前作用域可以访问上级域中的变量。
3.闭包的优点和缺点?
优点:闭包因为长期驻扎在内存中。可以重复使用变量,不会造成变量污染。
缺点:闭包会使函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,可能会导致内存泄露。解决方法是在退出函数之前,将不使用的变量全部删除。
4.闭包的应用场景?
函数的内部变量,想要被外部程序使用,但是语法决定外部不能使用,可以利用闭包解决。
补充:
特点:可以重复利用变量,并且这个变量不会污染全局的一种机制。