如何存储和打印出 for 循环中的总和?

How to store and print out a sum that's in a for loop?

程序是这样的:插入一个数字,例如 5,然后将它与它下面的所有数字相加。在这种情况下,它将是 5+4+3+2+1=15

我有这个:

var res = 0

function addUp3(num) {
  for (var i = 0; i <= num; i++) {
    console.log(i);
    res += i;
    console.log(res);
  }
}

我不知道为什么它会打印出随机数。

这个输出是: 0,0,1,1,2,3,3,6(无逗号)

我在网上找过答案,但是都想用数组来做,我觉得没必要。有人可以打开我的思路吗

我将 res 的最终打印移出循环并在 1 而不是 0

开始循环

var res = 0

function addUp3(num) {
  for (var i = 1; i <= num; i++) {
    console.log(i);
    res += i;
  }
  console.log(`sum: ${res}`);
}

addUp3(5);

for 循环每次都添加 i。 0 + 1 + 2 + ... n。它打印两次的原因是因为你有 2 console.logs.

  1. 日志 1 打印 0 (i)
  2. 日志 2 打印 0 (res + i)
  3. 日志 3 打印 1 (i)
  4. 日志 4 打印 1 (res + i)
  5. 日志 5 打印 2 (i)
  6. Log 6 打印 3(res + i,此处为 1 + 2)

如果您只想要最终答案,请在您的 for 循环后添加一个 console.log(res)

var res = 0

function addUp3(num) {
  for (var i = 0; i <= num; i++) {
    res += i;
  }
  console.log(res)
}