如何使用Javascript将货币字符串转换为双精度值?

2022-08-30 00:16:12

我有一个文本框,其中包含一个货币字符串,然后我需要将该字符串转换为双精度值以对其执行一些操作。

"$1,100.00"1100.00

这需要在所有客户端发生。我别无选择,只能将货币字符串保留为货币字符串作为输入,但需要将其强制转换/转换为双精度值以允许一些数学运算。


答案 1

删除所有非点/数字:

var currency = "-$4,400.50";
var number = Number(currency.replace(/[^0-9.-]+/g,""));

答案 2

会计.js是要走的路。我在一个项目中使用它,并且有很好的使用经验。

accounting.formatMoney(4999.99, "€", 2, ".", ","); // €4.999,99
accounting.unformat("€ 1.000.000,00", ","); // 1000000

你可以在GitHub上找到它