永发信息网

javascript闭包释放问题

答案:2  悬赏:10  手机版
解决时间 2021-06-04 13:02
  • 提问者网友:缘字诀
  • 2021-06-04 01:49
function Test() { var a = new Tets2(); // 省略声明Test2类 } Test(); 如上面代码 请教 在运行Test()后 其闭包环境中的变量a会被释放吗?
最佳答案
  • 五星知识达人网友:一秋
  • 2021-06-04 02:18

会被释放



function Test() { var a = new Tets2(); // a有个function 名为 getname,省略声明Test2类 ;return a.getname(); }



var function_c = Test();



这样a才不至于被释放。因为function_c 所引用的函数要依靠a 以及 Test2类。



全部回答
  • 1楼网友:摆渡翁
  • 2021-06-04 03:16

如果在Test()外想使用变量a则需要重新定义,在Test()内,变量a依然是new Tets2()执行后值

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯