要浮动的JavaScript格式输入值
JavaScript format input values to float
我想将不同的输入值转换为浮点值,无论它们的输入格式如何。
例如,这些值:
€ 1500000
€ 1.500.000
1500000
1.500.000
应全部转换为具有两个小数的浮点类型,例如1500000.00
虽然我可以成功地去除欧元符号,也可以去除空白,但我无法将1.500.000
转换为1500000.00
。
这就是我目前所拥有的:
var propertyValue2 = $scope.Data.PropertyCost.match(numberPattern);
propertyValue2 = $.trim($scope.Data.PropertyCost).replace(/€/g, '');
propertyValue2 = parseFloat(propertyValue2);
propertyValue2 = propertyValue2.toFixed(2);
console.log(propertyValue2);
我如何才能达到我想要的结果?
使用正则表达式只匹配数字:
var test = [
'€ 1500000',
'€ 1.500.000',
'1500000',
'1.500.000'
]
for (var i = 0; i < test.length; i++) {
console.log(
test[i],
'evaluate to',
parseFloat(test[i].toString().replace(/'D/g, '')).toFixed(2)
)
}
如果没有点作为小数分隔符,可以稍微更改正则表达式。
var propertyValue2 = '€ 12.000.123';
propertyValue2 = propertyValue2.trim().replace(/[€.]/g, '');
propertyValue2 = +propertyValue2;
propertyValue2 = propertyValue2.toFixed(2);
console.log(propertyValue2);
相关文章:
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 24小时输入时间:mm格式跨浏览器
- Angular指令中的最佳实践是将文本输入设置为英尺和英寸的格式
- 限制输入标记的格式
- 输入中的国际电话号码格式
- 在模糊 javascript 上格式化为 hh:mm 输入
- MySQL INSERT 命令正在将输入转换为不同的格式/值
- 使用new date()将数据与当前日期的MM/DD/YYYY格式的日期进行比较和筛选,同时从用户输入值中减去new d
- 更改日期范围输入组件的格式
- 想要初始化“;min”;输入类型的属性=“;日期“;在HTML5中,具有特定日期格式的日期值
- 将输入格式设置为从年月日到年月日
- angularjs输入类型日期的日期格式验证
- Javascript输入格式
- 日期选择器始终以默认日期打开,而不是以没有 DAYS 的格式输入日期
- 是否可以上传文本文件以 HTML/JS 格式输入
- 如何以 JSON 格式输入用户名/密码
- regex检查用户是否写了正确的格式输入
- 自动更正手机格式输入
- 要浮动的JavaScript格式输入值
- 以HTML格式输入并使用javascript进行处理,然后将新变量发送回HTML