根据mdn文档,该方法removeChild从DOM中删除一个节点,但它仍然驻留在内存中.我的问题是我也想从内存中删除它.我已尝试过delete操作员,但对象仍在那里......
myCanvas.parentElement.removeChild(myCanvas); // myCanvas actually removed from DOM
delete myCanvas; // false. does nothing
alert(myCanvas); // shows HTMLCanvasElement instead of undefined
Run Code Online (Sandbox Code Playgroud)
阅读http://perfectionkills.com/understanding-delete/.删除操作符不适用于变量(这就是它返回的原因false).
如果要删除变量对DOM节点的引用,请使用
myCanvas = null;
Run Code Online (Sandbox Code Playgroud)
覆盖该值.通常你永远不需要这样做,因为JS的垃圾收集器为你做了所有工作.
| 归档时间: |
|
| 查看次数: |
5060 次 |
| 最近记录: |