而循环逻辑

时间:2017-08-17 16:09:54

标签: javascript arrays loops while-loop

我只是对一些while循环逻辑有疑问。 因此,当你编写一个循环,向文档显示一串数字,并说当循环是< =(小于 等于)时,说,5 ,并告诉循环每次添加1,这不意味着:虽然循环等于5,它也会添加1到5?它没有,但是当我练习时我搞砸了一些代码并发现当它等于五时它没有添加一个,但我认为它会...

console.log('2nd Loop:');
text = '';

// loop:
i = 1; 
while (i <= 5) {
  text += i + ' ';
  i += 1
}

console.log(text); // Should print `1 2 3 4 5 `.

4 个答案:

答案 0 :(得分:2)

你的文字没有显示6的原因不是因为我没有增加。这是因为文本会在增加之前添加到文本中。

换句话说,当在第5个循环上执行时,文本将在5上添加,然后它将增加i,然后它将再次检查循环,这将不再有效,因此永远不会打印6。 / p>

答案 1 :(得分:0)

在记忆中,它增加了一个。但它并没有将它添加到文本中。

由于您在分配值后递增值,然后循环条件失败,因此它不会到达连接字符串的部分。

答案 2 :(得分:0)

确实如此。只需输出i,您就会看到6。由于您增加text时,6永远不会获得i

console.log('2nd Loop:');
text = '';

// loop:
i = 1; 
while (i <= 5) {
  text += i + ' ';
  i += 1
}

console.log(text,i); // Should print `1 2 3 4 5 `.

答案 3 :(得分:0)

+1添加到i后,您text,您需要做的就是切换两行顺序。

EDIT 如果你想从一开始只需将你的i改为0就可以了。

&#13;
&#13;
i = 1 

    console.log('2nd Loop:');

    text = '';

    i = 0; 
    while (i <= 5) {
      i += 1
      text += i + ' ';
    }

    console.log(text);
&#13;
&#13;
&#13;