我的Chrome版本:OS X中的50.0.2661.94(64位)
当我拨打javascript警告或在我的代码中确认时,
chrome的内存不会起飞,但会继续增长。
这是我的测试代码。
脚本:
window.onload =function(){
document.getElementById("confirm").onclick = doConfirm;
document.getElementById("confirm2").onclick = doAlert2;
}
var doConfirm = function(){
var rec = confirm("test test test test test test test");
}
var doAlert2 = function(){
alert("test test test test test test test test test ");
}
HTML:
<button id="confirm">set</button>
<button id="confirm2">set</button>
然后我不停地按下按钮,
并查看Chrome内存的活动监视器
我也尝试其他版本(49.0.2623.112米)和其他浏览器(FireFox)
但同样的问题不会发生......
任何解决方案?
答案 0 :(得分:1)
这种行为是可以预期的:每当您使用内置方法alert
,prompt
或confirm
时,您的主UI执行线程将暂停,直到用户响应该框出现了。但是,这并不妨碍Chrome(或任何浏览器)在后台执行继续消耗内存的其他任务(例如附加组件,Web Workers等)。
防止这种情况的推荐方法是不调用上述方法,而是使用DOM呈现的输入元素来执行您需要的确认,警报或提示功能。