我想添加两个带有固定的两位小数的浮点数,但它转换为字符串并连接。我知道它的简单问题,但实际上我很着急
var a=parseFloat("15.24869").toFixed(2)
var b=parseFloat("15.24869").toFixed(2)
输入
输入时更新var a=parseFloat("7,191");
var b=parseFloat("359.55");
c=(a+b).toFixed(2)
O/P:NAN
为什么呢?
答案 0 :(得分:2)
.toFixed()
方法返回一个字符串。在之后调用它您已经执行了添加,而不是之前。
var a=parseFloat("15.24869");
var b=parseFloat("15.24869");
var c=(a+b).toFixed(2);
之后,c
也会成为字符串,所以您要小心。
关于您更新的其他问题,输出不是NaN
;它是366.55
。表达式parseFloat("7,191")
给出了值7
,因为,
不会被识别为数值的一部分。
答案 1 :(得分:1)
只需添加parenthesys即可解析浮动整个结果字符串
var a=parseFloat((15.24869).toFixed(2));
var b=parseFloat((15.24869).toFixed(2));
c=a+b
答案 2 :(得分:0)
做c = a + b将两个答案加在一起。您可能只想将它们转换为字符串然后将它们连接起来。
var a=parseFloat("15.24869").toFixed(2)
var b=parseFloat("15.24869").toFixed(2)
var c = (a.toString() + b.toString());