gpt4 book ai didi

Javascript float + float = 字符串?

转载 作者:数据小太阳 更新时间:2023-10-29 06:05:53 25 4
gpt4 key购买 nike

当我运行它时,它返回 NaN。如果我不 parseFloat,我将添加 2 个字符串。我错过了什么?我会说我的结果应该总是一个 float ?

function calculate(i) {
var result = 0.0;
$j(".t" + i + " input").each(function () {
var number = $j(this).val();
number = number.replace(",", ".");

if (parseFloat(number) != NaN) {
result = parseFloat(result);
number = parseFloat(number);
result += number;
}
});
console.log(result);
return result;
}

最佳答案

您没有正确验证不是数字。要检查数字是否为 NaN,请使用 isNaN 函数:

if (!isNaN(parseFloat(number))) { ... }

请注意,NaN === NaN 始终返回 false

您可以在这里阅读更多相关信息:Why is NaN === NaN false?

完整代码如下:

function calculate(i) {
var result = 0;
$j(".t" + i + " input").each(function () {
var number = $j(this).val();
number = parseFloat(number.replace(",", "."));

if (isNaN(number)) {
return;
}
result += number;
});
console.log(result);
return result;
}

关于Javascript float + float = 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32966681/

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