关于JavaScript中的for循环

时间:2018-05-22 13:24:29

标签: javascript

我是JavaScript新手,遇到了关于for循环的基本问题:

var vacationSpots = ["Tokyo", "London", "New York"];

for (var i = vacationSpots.length; i >= 0; i--) {
  console.log("I would like to visit " + vacationSpots[i]);
}

我想知道为什么停止条件我们需要i >= 0而不是i = 0。我试过了i = 0,但只有错误显示。你能告诉我i >=0i = 0之间的区别吗?我想通过i = 0,代码将停在东京,它位于数组中的第0位。

3 个答案:

答案 0 :(得分:6)

  

我想知道为什么停止条件我们需要i >= 0而不是i = 0

因为它不是"停止条件"。这是一个"延续条件"。循环运行,但确实如此。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Loops_and_iteration#for_statement

  

评估条件表达式。如果condition的值为true,则执行循环语句。如果condition的值为false,则for循环终止。如果完全省略条件表达式,则假定条件为真。

(是的,不要混淆i = 0i == 0)。

答案 1 :(得分:0)

  

为什么i >= 0而不是i = 0

这是因为i = 0表示您要将0分配到i变量中。但是loop需要true条件才能继续工作,这就是需要条件语句的原因。因此,通过传递i >= 0,您要循环继续工作,而 i大于0

要试验您可以尝试的内容i == 0而不是i = 0,但只有当i等于0

时,循环才有效

答案 2 :(得分:0)

1.首先看看你的阵列中有多个属性:"东京","伦敦","纽约"

2.然后,为了浏览这些属性,你需要经历那些索引(这意味着数组位置,如索引= 0中的东京,首先是伦敦,索引= 1,第二位和纽约) index = 2,第三名)

3.所以看这里:var i = vacationSpots.length; i> = 0;我 -

i = 3,因为有3个属性

并且您需要将这些属性从第一位计算到最终位置:i> = 0

然后用 -

计算减少 希望这可以帮助