sc_fighting
2016-03-05 19:29
我想说我怎么一输入string.length;然后整个网页就死了,求解,无语。。。
function math(){
document.write(Math.floor(x)+"<br/>");
}
var arr=[3.3,-0.1,-9.9,8.9];
for(var i=0;i<arr.length;){}
/*写到此,浏览器页面就整个卡死了,why?*/
for(var i=0;i<arr.length;){}
这就是经典的死循环,哈哈哈
i=0,arr.length=4
i<4是恒成立的 所以你这个就一直循环下去了 部分浏览器没有对死循环很好的处理 就会卡死 甚至还有可能导致电脑cpu使用超频而死机 你在写alert 或者循环语句的时候最好还是先注释 写完后再取消注释运行
你为什么要弄个函数来输出呢,直接将输出写在循环里不就行了?
因为你写了一个死循环,但感觉你写的这个语法好像哪里有问题。不知怎么说。
你没有i++,i的数值永远不变,死循环
for循环语句的格式是:for(初始化变量;循环条件;循环迭代){循环语句;}
例如:for(var i=0;i<10;i++)
建议在这边写的时候,你先写for(var i=0;i<arr.length;i++),然后再去写{},或者for(var i=0;i<arr.length;i++){,然后再}
for循环启动,for(;;)表示for循环写完,然而你并没有写i++,虽然有循环判断语句,但是i值一直不变,所以陷入了死循环,表现出来的形式就是浏览器页面整个卡死。你在;后面先写i++然后再填上;应该就没有问题了
写完';',整个也就卡死不动了,不是没写~~~
for里面还少了个条件啊。
JavaScript进阶篇
468195 学习 · 21891 问题
相似问题