【发布时间】:2010-03-21 05:54:15
【问题描述】:
我正在研究一个简单的减法问题,但不幸的是它一直返回NaN
这里是函数
function subtraction(a, b) {
var regexp = /[$][,]/g;
a = a.replace(regexp, "");
b = b.replace(regexp, "");
var _a = parseFloat(a);
var _b = parseFloat(b);
return _a - _b;
}
这就是我的称呼。
txtGoodWill.value = subtraction(txtSellingPrice.value, txtBalanceSheet.value);
提交给函数的数字只有货币(即:$2,000 或 $20 等)
现在我知道我不能用 $ 或 , 减去数字,但我终生无法弄清楚为什么它们会在等式中得到评估。
【问题讨论】:
-
b - b.replace(regexp, "");应该是b = b.replace(regexp, "");-- 是这里的错字还是在您的原始代码中? -
抱歉,打错字了。我已经解决了这个问题。
-
问题可能与“空”值有关吗?如果是这样,我将如何弥补?
-
我决定 NIX 减法函数并在主函数中执行它......似乎有效。不知道为什么我无法让该功能按预期工作。
标签: javascript math subtraction