什么情况,各位大神是否能解释一下?

来源:7-14 向下取整floor()

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?*/


写回答 关注

9回答

  • DQJ俊逸
    2016-08-02 17:19:38

    for(var i=0;i<arr.length;){}

    这就是经典的死循环,哈哈哈

    i=0,arr.length=4

    i<4是恒成立的 所以你这个就一直循环下去了 部分浏览器没有对死循环很好的处理 就会卡死 甚至还有可能导致电脑cpu使用超频而死机 你在写alert 或者循环语句的时候最好还是先注释 写完后再取消注释运行

  • 我要开发地图系统
    2016-07-16 15:08:39

    你为什么要弄个函数来输出呢,直接将输出写在循环里不就行了?

  • 煊_煊
    2016-05-10 15:09:47

    因为你写了一个死循环,但感觉你写的这个语法好像哪里有问题。不知怎么说。

  • morepain
    2016-04-03 11:17:00

    你没有i++,i的数值永远不变,死循环

  • zhangyudemuke
    2016-03-24 21:43:52

    for循环语句的格式是:for(初始化变量;循环条件;循环迭代){循环语句;}

    例如:for(var i=0;i<10;i++)


  • 遇上
    2016-03-09 15:11:26

    建议在这边写的时候,你先写for(var i=0;i<arr.length;i++),然后再去写{},或者for(var i=0;i<arr.length;i++){,然后再}

  • 富真好
    2016-03-07 19:17:21

    for循环启动,for(;;)表示for循环写完,然而你并没有写i++,虽然有循环判断语句,但是i值一直不变,所以陷入了死循环,表现出来的形式就是浏览器页面整个卡死。你在;后面先写i++然后再填上;应该就没有问题了

  • sc_fighting
    2016-03-05 20:15:56

    写完';',整个也就卡死不动了,不是没写~~~

  • 限量
    2016-03-05 20:01:49

    for里面还少了个条件啊。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468195 学习 · 21891 问题

查看课程

相似问题