想要添加两个浮点数,它们被串联为字符串

时间:2015-05-23 12:19:18

标签: javascript

我想添加两个带有固定的两位小数的浮点数,但它转换为字符串并连接。我知道它的简单问题,但实际上我很着急

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

为什么呢?

3 个答案:

答案 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());