问答详情
源自:4-8 退出循环break

我用了for循环,为什么输出的结果不对呢

用了for循环,输出的结果少了数组中的[1]和[3],这是咋回事?

提问者:aurayang 2015-07-20 17:49

个回答

  • 卿茕茕
    2015-07-20 18:10:28
    已采纳

    // 只输出满60分以上的
    for ( var i = 0; i < mynum.length; i++ )
    {
      if ( mynum[i] < 60 )
      {
        document.write( "成绩:" + mynum[i] + "及格" + "<br>" );
      }
    }
    
    // 输出全部
    for ( var i = 0; i < mynum.length; i++ )
    {
      if ( mynum[i] > 60 )
      {
        document.write( "成绩:" + mynum[i] + "及格" + "<br>" );
      }
      else
      {
        document.write( "成绩:" + mynum[i] + "不及格" + "<br>" );
      }
    }

    话说这样不就行了么? 你在 for 的循环语句里已经 i++ 了 为什么还要在循环体内再 ++ 呢?

  • ternenceZz
    2015-08-28 11:41:09

    i自增了两次 删掉一个就行了

  • puffbaby
    2015-07-22 21:02:36

    因为 你 在 for 里又给I加了一次

  • 卿茕茕
    2015-07-20 18:00:58

    你这循环用的 ...

    你就没发现 最后输出的就只有

    var mynum =[70,80,66,90,50,100,89];

    70,66,50 3个么?你其他的不要了么?

  • aurayang
    2015-07-20 17:50:16

    知道问题了,i=i++就好了,但为什么i+1就不行呢?