增加for循环javascript
increment in for loop javascript
我不知道为什么,但是我不能在for循环中正常地增加值。
for (var i = 0; i < 5; i++) {
var number= 0
number++
console.log(number);
}
这是一个简单的例子,我在控制台得到5倍的数字1,而不是0,1,2,3,4。我怎样才能做到呢?
在循环内声明变量,因此每次循环运行时都会发生。只需将声明移到外面…
var number = 0;
for (var i = 0; i < 5; i++) {
number++;
console.log(number);
}
它打印1,1,1,1,1,因为您在每次迭代中重置number
。
将代码改为:
for (var i = 0; i < 5; i++) {
console.log(i);
}
或
var number = 0;
for (var i = 0; i < 5; i++) {
console.log(number);
number++;
}
(在评论中回答其他问题)你得到1,2,3,4,5,因为你在打印它之前增加了number
。
您一直将number
的值重置为0。尝试在循环之前设置它:
var number= 0
for (var i = 0; i < 5; i++) {
console.log(number);
number++
}
你可以这么做
<script>
var number = 0;
for (var i = 0; i < 5; i++) {
number++;
console.log(number);
alert(number)
}
</script>
代码的问题是,您在for循环中声明number变量,因此每次迭代都会将其重新初始化为0。要解决这个问题,应该在循环开始之前在循环外部声明number变量。下面是更正后的代码:
for (var i = 0; i < 5; i++) {
number++;
console.log(number);
通过此更改,number变量将在迭代期间保持其值,并且您将在控制台中看到预期的输出0、1、2、3、4。
如果你只想在0到5的范围内迭代,你可以使用"i"变量。
for (let i=0; i<5; i++) {
console.log(i);
}
但是如果你因为某些原因需要使用另一个变量number,在javascript中你也可以这样写
let number = 0;
for (let i=0; i<5; i++) {
console.log(number++);
}
或
for (let i=0, number=0; i<5; i++) {
console.log(number++);
}
相关文章:
- Javascript循环不会自我更新
- JavaScript循环无法正确计算/显示结果
- JavaScript循环并等待函数
- Javascript:循环属性内部的条件递增或递减
- Array方法中的Javascript循环
- 用于使用javascript循环选择选项
- 中断javascript循环
- 如何在javascript循环中打印代码
- jQuery.ajax()访问javascript循环中的beforeEnd局部变量
- 在qualtrics上使用javascript:循环块中的问题id
- GoogleMapsV3api只显示Javascript循环中的一些标记
- Javascript循环限制为仅1
- 如何将jQueryeach()转换为常规的javascript循环
- 有没有javascript循环的替代方案
- GraphQL代码中的Javascript循环依赖关系
- Javascript循环文本
- JavaScript循环中的HTML
- ..的Javascript..循环中的对象没有在最后一个属性上运行
- JavaScript循环迭代太多
- Javascript循环计算