JS中闭包是个很重要的概念,个人理解就是对函数调用者之间变量的访问控制的环境
function Person(){
var name='stt';
function sayName(){
console.log('name is=',name);
};
sayName();
}
var person=new Person();
person();
sayName函数中的name是外部函数定义的局部变量,sayName能够直接访问该变量
优点:1.能够通过person()调用访问到Person函数内部的局部变量name
2.声明的局部变量name会因为被sayName引用而不会随着Person函数的结束而被回收,会一直存在于内存中
缺点:频繁使用闭包,会使很多变量常驻内存,影响性能