【发布时间】:2019-02-20 12:42:17
【问题描述】:
如何正确清理用户输入的货币值?
我需要大十进制的值,但用户的输入字段是标准文本输入。 我正在尝试格式化字符串,但是,对于用户通常插入的所有变体,我找不到一种干净的方法。
我试过这个:
parseFloat(amount.replace(',', '.')
这适用于以下情况:
1000 -> 1000
1000.1 -> 1000.1
1000,1 -> 1000.1
但是,我有以下两种情况目前不起作用:
1,000.1 -> gives: 1.1 / should be: 1000.1
1.000,1 -> gives 1.1 / should be: 1000.1
有没有办法格式化字符串,以便在用户输入一个或多个逗号或点作为十进制分隔符时它也可以工作?
【问题讨论】:
标签: javascript parsing numbers