减去2个字符串结果十进制

时间:2014-10-08 09:23:22

标签: javascript string math decimal

我有两个字符串值的字段,我希望减去十进制数的结果。

这两个字段可能具有以下值:2.43和1.13;

我知道我可以分割字符串,然后进行数学计算,然后连接结果,但我想如果没有更简单的选项。我不知道为什么parseFloat()不起作用。可能是因为而不是2.43我有2,43(罗马尼亚小数“风格”)?

2 个答案:

答案 0 :(得分:1)

你可以先用正则表达式的句子改变'for。

这里,str是你的字段值。

var res = str.replace(",", "."); 

然后你可以做ParseFloat(res)。

答案 1 :(得分:0)

您可以在字符串上使用replace将逗号更改为小数点,然后使用parseFloat

var a = '2,43';
var b = '1,13';

var a = parseFloat(a.replace(',', '.'));
var b = parseFloat(b.replace(',', '.'));

console.log(a - b); // 1.3000000000000003
console.log((a - b).toFixed(2)) // 1.30

DEMO