简单的循环

cod*_*der 3 javascript for-loop

我有这个简单的for循环但不幸的是我无法成功运行它.

这就是我所拥有的:

对于循环

 var imagesPerPage = 2

  for (i = 0; i < response.d.length; i++) {
    if (i > imagesPerPage) {
     alert('more');
     }else{
     alert('less');
     }
  }
Run Code Online (Sandbox Code Playgroud)

当我运行此代码first如果我有<= 2然后我得到"less"警报twice.但是当我有> 2时,我会得到"less"警报twice"more"警报once.

有谁能说我哪里出错了?

Sir*_*rko 6

为什么不if为此使用简单的结构?

var imagesPerPage = 2

if ( response.d.length > imagesPerPage ) {
  alert('more');
} else {
  alert('less');
}
Run Code Online (Sandbox Code Playgroud)

在您的代码中,循环始终运行response.d.length.在前两次你的虚假部分如果发生火灾并导致两个"更多"警报.之后所有其他运行使用if子句的真实部分并返回"更多".无论如何,无论您发出什么警报,都会完成所有运行.

但是,您可以通过break在要离开循环的位置插入命令来停止循环.然而,这通常导致非常不清楚的代码,因此应尽可能避免.(此外,我怀疑,这将是你想要的行为.)