继续陈述混乱

时间:2015-05-04 12:20:15

标签: javascript

javascript中的continue语句对我来说真的没有意义,还是我在想这个?

例如,假设我在一个对象内部进行局势:

for (i in JM) {              
    if (JM[i].event == 'StartLocation') {
        continue;
    }
}

如果if语句是true,那么它将在技术上跳过该迭代。为什么我们使用continue这个词呢?使用break这个词不是更有意义吗?但是,break完全相反,它会停止循环,对吗? (或者可能是一个名为hop的声明)是有道理的。直到几分钟前才真正想到这个:P

3 个答案:

答案 0 :(得分:2)

是的,break将您带出循环,并在循环后将您置于行。 continue会将您直接带回循环的 next 迭代的开头,跳过循环中剩余的任何行。

for(i in JM)
{ // continue takes you directly here

    if(JM[i].event=='StartLocation'){
        continue;
    }

    // some other code

} // break takes you directly here

如果你只询问选择这个词,那么这个问题可能没有很好的答案。使用continue会导致循环迭代继续,仅在下一次迭代时。可以选择任何关键字。第一个使用此行为指定语言的人只选择了“继续”一词。

答案 1 :(得分:1)

continue关键字与break类似,因为它会影响进度 一个循环。在循环体中遇到continue时,控件会跳转 离开身体并继续循环的下一次迭代。

答案 2 :(得分:1)

像这样理解:

for(i in JM){
  if(JM[i].event=='StartLocation'){
        continue;
  }
  /*This code won't executed if the if statement is true and instead will move to next iteration*/
  var testCode = 3;// Dummy code
}

break将打破for循环(退出for循环),但continue将跳过当前迭代,并将移至下一次迭代。

您会找到相关的文档Here