如何在for循环中对相乘后的数值求和?代码运行异常求助
问题分析与解决
你的代码核心问题是变量sum未初始化:
- 声明
var sum;后,sum的初始值是undefined - 当执行
sum = sum + score时,undefined + 数字的结果是NaN(非数值),最终输出自然不对
修正方法很简单,给sum设置初始值0即可:
var sum = 0; // 初始化sum为0 var score; for (var i = 2; i < 24; i++) { score = i * 24; sum = sum + score; } document.write(sum);
也可以简化代码,去掉多余的score变量,直接在累加时计算:
var sum = 0; for (var i = 2; i < 24; i++) { sum += i * 24; } document.write(sum);
内容的提问来源于stack exchange,提问作者Dino
相关产品推荐
相关产品推荐

