javascript - 如何用点和逗号解析数字
问题描述
我收到一个字符串,例如;
1.234.567,89
我要1234567.89
逗号是十进制分隔符。点是千位,百万位分隔符
我想把它当作一个数字。
我尝试替换,但仅适用于第一个“。”。和 parseFloat。我也尝试了一些在这里找到的正则表达式,但对我不起作用
我要这个;
var numberAsString= '1.234.567,89';
//Step to clean string and conver to a number to compare (numberAsString => numberCleaned)
if (numberCleaned> 1000000) {alert("greater than 1 million");}
任何想法?(对不起,如果它是一个新手问题,但我在几个小时内没有找到任何解决方案......)
解决方案
你可以replace
使用g
const val = '1.234.567,89'.replace(/\./gi, '').replace(/,/, '.');
console.log(val)
console.log(typeof parseFloat(val))
推荐阅读
- kubernetes - 在 Airflow Cloud Composer 中从 Kubernetes Pod Operator 推送 Docker 镜像
- payment - Adyen,无需付款即可为信用卡创建令牌
- javascript - Typedoc 错误:尝试设置未声明的选项(模式)
- http-live-streaming - 使用 Stream/RAF Tester 调试 Roku 技巧模式
- c++ - 递归获取提升属性树中所有值的完整关键路径
- hardware - 硬件中的轮询与握手
- entity-framework - 除非更改,否则 DropDownListFor 不会保存
- javascript - 使用 ES6 模块时,设置了 --watch 标志的 Mocha 会引发错误
- python - 如何动态启动嵌套字典并将值分配给嵌套字典
- node.js - standard_init_linux.go:219: exec 用户进程导致:没有这样的文件或目录 - docker 问题