我有两个字符串值的字段,我希望减去十进制数的结果。
这两个字段可能具有以下值:2.43和1.13;
我知道我可以分割字符串,然后进行数学计算,然后连接结果,但我想如果没有更简单的选项。我不知道为什么parseFloat()
不起作用。可能是因为而不是2.43我有2,43(罗马尼亚小数“风格”)?
答案 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