You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何使用JavaScript计算输入框数值总和?附代码

计算输入框数值总和的修正方案

你的代码核心问题在于sum的初始值设置错误,以及未处理非数字输入的情况,以下是修正后的实现:

问题分析

  • 原代码中let sum='';将sum初始化为字符串,执行sum+=parseInt(...)时会变成字符串拼接(比如输入1和2会得到"12"而非3)。
  • 未处理输入为空或非数字的情况,此时parseInt()会返回NaN,导致最终总和变为NaN。

修正后的代码

HTML部分

<input type="text">
<input type="text">
<button>Find Sum</button>

JavaScript部分

const inputs = document.getElementsByTagName('input');
const button = document.querySelector('button');

button.addEventListener('click', function() {
    let sum = 0; // 初始化为数字0,确保数值累加
    for (let i = 0; i < inputs.length; i++) {
        // 解析输入值为十进制数字,空值/非数字自动转为0
        const value = parseInt(inputs[i].value, 10) || 0;
        sum += value;
    }
    console.log('总和:', sum);
});

关键修改点

  • 将sum初始值设为0,保证累加操作是数值运算而非字符串拼接。
  • 给parseInt添加第二个参数10,明确指定十进制解析规则,避免八进制解析的意外问题。
  • 用|| 0处理无效输入:当输入为空或无法解析为数字时,自动将值转为0,防止总和出现NaN。

内容的提问来源于stack exchange,提问作者shaijuelayidath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 01:13:12