有时候发现多写写代码就会更容易理解闭包的用处。
简单来说,闭包就是能够读取其他函数内部变量的函数
最大用处有两个,一个可以读取函数内部的变量,另一个就是让这些变量的值始终保持在内存中
注意点:闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露
function Person() {
var name = 'hello'
function say () {
console.log(name)
}
return say()
}
Person() // hello
在JS中,函数外部无法直接读取内部的变量,内部可以直接读取外部的变量,从而就产生了闭包的概念