我正在编写一些需要快速运行的javascript代码,并使用了许多短期对象.我最好使用对象池,还是仅仅根据需要创建对象?
我写了一个JSPerf测试,它表明使用对象池没有任何好处,但是我不确定jsperf基准测试是否运行得足够长,以便浏览器的垃圾收集器能够启动.
代码是游戏的一部分,所以我不关心传统的浏览器支持.无论如何,我的图形引擎无法在旧浏览器上运行.
如果我已经向窗口对象添加了一个函数,如下所示:
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
Run Code Online (Sandbox Code Playgroud)
并且假设我的代码可能多次运行此代码段是否存在内存泄漏的危险?(因为我永远不会从窗口[SPA]中"删除"该功能
而且为了安全起见,我更喜欢在我的组件死亡时删除该功能(顺便说一下,angularjs2)如何从窗口对象"取消绑定"一个函数?
我希望我理解正确,每次我打电话给window.onclick = function(...)我添加一个功能而不是替换一个