gpt4 book ai didi

javascript - 删除数字时如何解决 NaN?

转载 作者:行者123 更新时间:2023-11-29 16:15:55 25 4
gpt4 key购买 nike

这是我在所有文本框中添加时工作正常但在删除数字后显示 NaN 的代码:

function sumVal()
{
var total = 0;
var coll = document.getElementsByTagName("input")
for ( var i = 0; i<coll.length; i++)
{
var ele = coll[i];
total += parseInt(ele.value);
}
var Display = document.getElementById("Display");
Display.innerHTML = total;
}

<input onkeyup="sumVal()" />
<input onkeyup="sumVal()" />
<input onkeyup="sumVal()" />

最佳答案

在将其添加到总数之前尝试检查您的值是否为 NaN:

total += (isNaN(parseInt(ele.value, 10)) ? 0 : parseInt(ele.value, 10));

此外,不要忘记 parseInt 的基数(如果您有小数位,则使用 parseFloat):

基数

An integer that represents the radix of the above mentioned string. Always specify this parameter to eliminate reader confusion and to guarantee predictable behavior. Different implementations produce different results when a radix is not specified.

var nums = [10, "sads", 44, 16];
var numsLen = nums.length;
var total = 0;

while(numsLen--){
total += (isNaN(parseInt(nums[numsLen], 10)) ? 0 : parseInt(nums[numsLen], 10));
}

在此example ,因为“sads”不是数字 (NaN),所以我们将 0 添加到总数中。

关于javascript - 删除数字时如何解决 NaN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15952498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com