javascript - 琐碎的 for 循环需要解释

标签 javascript for-loop

由于i += ii = i + i的缩写,下面的代码

for (var i = 0; i<=10; i++) {
console.log(i += i) }

应该输出:

1. 0, because  0 += 0 + 0 (i = 0)
2. 2, because  0 += 1 + 1 (i = 2)
3. 6, because  2 += 2 + 2 (i = 6)
4. 12, because 6 += 3 + 3 (i = 12)

然而,虽然控制台确实正确输出了1. - 3.的值,即0、2和6,但我得到的4.的值,即14,并不是我预测的值(上面的第 1-4 行是在执行 for 循环之前输入的)for 循环将输出 (=12)。 我在这里解释错了什么?

代码本身显然无趣,但我还是很好奇它为什么会这样工作。

最佳答案

所以基本上,您从 0 开始在每次迭代中加一然后加倍。

那么你应该得到:0、2、6、14。我认为你的数学而不是代码在这里是错误的。

关于javascript - 琐碎的 for 循环需要解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33580557/

相关文章:

javascript - 在 JavaScript 上创建 SimpleImage

java - 简单的 for 循环在某些手机上无法正常工作。优化不好?

java - 在 Java 中如何从计数器中减去一个值?

javascript - 使用BeautifulSoup获取 "View Element"代码而不是 "View Source"代码

javascript - 如何计算两个日期之间经过的天数

javascript - 如何将整数添加到二维数组项

r - 生成数据帧列表并应用函数

r - 计算值的共现并创建计数数据框

for-loop - `for i in &v`和 `for i in v`之间有区别吗?

javascript - 滚动到屏幕顶部后,如何使 div 贴在屏幕顶部?