我是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 >=0
和i = 0
之间的区别吗?我想通过i = 0
,代码将停在东京,它位于数组中的第0位。
答案 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 = 0
和i == 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
然后用 -
计算减少 希望这可以帮助