javascript - 我应该如何修复 for 循环代码以求和范围?

标签 javascript for-loop sum range

function needToAdd(start, end) {
   for(var i = start; i <= end; i++) {
    start += i;
}
return start
};

console.log(needToAdd(1, 10));
// 56

嘿伙计们,我只是想知道如何在 JavaScript 中使用 for 循环对范围求和。我这里的内容有效,但它给了我 56,而不是 55。我应该在 start += i 中更改什么才能使其得到 (1 + 2 + 3... + 10) 的总和(1 + 1 + 2 + 3 + 4.... + 10)?

最佳答案

您需要将代码更新为以下内容

function needToAdd(start, end) {
   for(var i = start+1; i <= end; i++) {
    start += i;
}
return start
}

注意:假设您的开始和结束都是 1。因此,在这种情况下,您的循环将执行一次,并在开始处添加 1,并将其更新为 2。因此,你必须从 1 开始执行循环。

关于javascript - 我应该如何修复 for 循环代码以求和范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31490377/

相关文章:

java - 这段代码的时间复杂度o()是多少? java

javascript - 逐步更改页面上的所有图像

javascript - 返回字符串数组中大写字符的总数

java - 嵌套循环错误 - java

swift - 你能告诉 for 循环有条件地前进不止一步吗?

mysql - 带条件的 SUM 行的 SQL 语句

javascript - HTML、CSS 和 JS 中的图像代码

javascript - 使用两个命名函数,还是使用一个带有条件语句的函数?

for-loop - 我应该期望看到 `for` 循环中的计数器在其体内发生变化吗?

regex - 如果一个单元格有值,则添加三个单元格,如果没有,则添加两个