删除脚本元素是否从内存中删除其功能?

问题描述:

var scripts = document.getElementsByTagName("script"); 
for (var i=scripts.length; i--;){ 
    (scripts[i]).parentNode.removeChild(scripts[i]); 
} 

有人问我这个问题,我的第一个想法是:不。但是,当您删除style元素时,页面会自动更新,删除样式。这可能是因为浏览器如何挂钩css - 我想我记得,CSS更新每个事件(鼠标移动,点击,类型等)。删除脚本元素是否从内存中删除其功能?

我只是想确认,摆脱脚本标记,不会摆脱已经创建的函数,因为我不在我可以测试的计算机。

这也让我思考的良好做法,以帮助安全代码对萤火虫[般]用户

简短的回答,第

这得到了由引擎计算一次会留下任何脚本在你的会话剩余时间内存中。即使删除包含代码的整个脚本节点也不会改变该事实。