【发布时间】:2014-03-18 03:09:20
【问题描述】:
我有一个 javascript 计算器,它接受用户输入,进行一些数学运算并将结果写入输入字段“#theResult”
由于“#theResult”在 keyup 上更新,有时“#theResult”将返回 Infinity、NaN 或“”,直到所有字段都填写完毕。在填写所有字段之前,我希望“#theResult”返回 0。代码如下:
if (theResult === Infinity || theResult === "" || theResult === NaN) {
theResult === 0;
}
$("#theResult").val(theResult);
完整代码是here
提前感谢您的帮助!
【问题讨论】:
-
您在代码中使用 toFixed(...),因此“theResult”变量将始终为字符串。
-
你最好只使用
theResult = theResult || 0; -
也就是说,
NaN在等式中使用时具有特殊含义,将其替换为0可能是个坏主意。 -
@Ivan Kuckler 因为 toFixed 返回一个字符串,你如何将零附加到一位小数。说要代表 10.50 美元?
-
@zzzBov 我尝试使用 theResult = theResult ||删除 toFixed 后为 0。如果我先进入“价格”字段,仍然会获得 Infinity
标签: javascript jquery