【问题标题】:Javascript NaN when summing Num求和 Num 时的 Javascript NaN
【发布时间】:2019-02-18 09:15:27
【问题描述】:

我正在制作一个简单的 web 应用程序,它需要 2 个值,对它们求和,然后添加增值税并将其添加到总计中,我已经完成了大部分操作,但是在对总计和增值税求和时出现错误。我研究过 NaN 的意思不是数字,也不是错误的迹象。我已经尝试过,但据我所知,我似乎无法理解为什么在添加增值税和总和时我的总计输出 NaN,我通过验证器运行它,但我仍然找不到错误(对此感到抱歉我是一个没有经验的程序员,我正在努力)

 function sumTotal() {
        let val1 = document.getElementsByName("val1")[0].value;
        let val2 = document.getElementsByName("val2")[0].value;
        let sum = Number(val1) + Number(val2);
        document.getElementsByName("sum")[0].value = sum;
        vatCalc(sum)
        grandTotal(sum)
    }
    function vatCalc (sum) {
        var sumVat =0.20;
         let vat = sumVat*sum;
         document.getElementsByName("vat")[0].value = vat;
}
function grandTotal (sum, vat) {
      let total = Number(sum) + Number(vat);
      document.getElementsByName("total")[0].value= total;

}

非常感谢任何可以提供帮助的人!

【问题讨论】:

    标签: javascript html nan forms


    【解决方案1】:

    grandTotal() 接受两个参数,但在sumTotal() 下的grandTotal(sum) 中,您只输入一个参数。一定要传入vat

    【讨论】:

    • 我试过了,但不幸的是,当我尝试它时,没有任何内容输出到总计字段
    • 我认为您正在尝试执行以下任一操作:1) 使 vatCalc() 计算增值税并在 grandTotal() 中调用 document.getElememntByName 或 2) 使 vatCalc(sum) 返回增值税并使用它传递给grandTotal()。在第二种情况下,当您调用vatCalc(sum) 时,您需要将结果保存在一个变量中。 let vat = vatCalc(sum)。另外,在您的vatCalc(sum) 中,您需要return 结果
    • 函数增值税计算 (sum) { var sumVat =0.20;设增值税 = sumVat*sum;退税; }
    • 函数 sumTotal() { let val1 = document.getElementsByName("val1")[0].value;让 val2 = document.getElementsByName("val2")[0].value;让 sum = Number(val1) + Number(val2); document.getElementsByName("sum")[0].value = sum;让增值税=增值税计算(总和);总计(总和,增值税); }
    • 哦,我明白了!我试图在我的 grTotal 方法中初始化 sum,但我不太确定该怎么做,非常感谢
    猜你喜欢
    • 2015-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-10
    • 2016-11-27
    • 2012-06-05
    • 2014-07-04
    • 2013-01-03
    相关资源
    最近更新 更多