function test(){ var a=0; var obj={}; obj.fun=function(){ return ++a; } return obj.fun }var t=test();//t是一个函数,其内部变量是test函数的引用,test调用完毕t的作用域链不会被销毁t();t();t();alert(t());//4test()();test()();test()();alert(test()());//1//我的理解是test每次调用都会初始化,所以结果都是1,但是test()代表的obj.fun的作用域链不会被删除不知道对不对我的问题是test()()算闭包么,其中内存会不会被释放,还有闭包中的内存什么时候会被释放,只有关闭窗口时才会被释放么?
添加回答
举报
0/150
提交
取消