`
riali
  • 浏览: 40439 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

为IE找个新死法

阅读更多
IE在解释表达式的时候显然大有优化的余地,FireFox就没这个毛病。下面这段小代码可以轻松让IE崩溃掉:
varn=32768;
vars=newArray(n).join("0+")+0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert(
"杀不掉,试试把n调大一点?");
}

其实就是让IE解析一个“0+0+0+0....”的表达式。
在我的机器上,IE6跑到32255个加法计算就自动关闭了(可以作为一个新的无提示关闭浏览器漏洞呵呵,会把同一个进程打开的全部窗口一起杀掉),IE7还要差些,在31515就挂了。opera也好不到哪里去,32180就崩溃了。而FireFox一直跑到2^27(ie和opera还不到2^15)的时候把我的内存全吃光了,在虚拟内存支持下还是可以执行完成:
vars="0+",n=27;
for(vari=0;i<n;i++)s+=s;
alert(s.length
/2)
s
+=0;
if(confirm("真的要杀了浏览器吗?")){
eval(s);
alert(
"杀不掉,试试把n调大一点?");
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics