在将内部函数作为函数的返回值的时候,由于闭包的存在会携带上内部函数所使用的外部函数的变量,如果这些变量很多或者很大,那么在使用完返回的内部函数后最好将其置为null以便释放闭包中的携带变量,一面造成内部占用过大的问题。如:
function fn1(){
var a = new Arrar()[10000000];
return function(){
console.log(a);
}
var fn2 = fn1();
fn2();
fn2=null;