需求:
类似支付宝充值输入
以…开头点击充值修改为0.xx,
输入x.x.x修改为x.xx
输入x.x…x修改为x.xx
输入0修改为0.00
/**
* @description 只处理处理不常见的输入转换。转换后在调用通用的金额格式化进行处理
* @param data '.333' '..333' '33.22','2.22' '2.33...3'
* @returns '0.333' '0.333' '33.22' '3.33' '2.333'
*/
function filters(data) {
let originData = data;
// 获取用户输入内容,提取数字
let input = data.match(/[0-9]+/g);
// 判断用户输入.x or x.x
let posDecimal = originData.toString().indexOf(".");
console.log('index',posDecimal)
console.log('data',input)
if(posDecimal === 0){
input.splice(0, 0, "0.");
}else{
input.splice(1, 0, ".");
}
return input.toString().replaceAll(",", "");
}
- @param data ‘.333’ ‘…333’ ‘33.22’,‘2.22’ ‘2.33…3’
- @returns ‘0.333’ ‘0.333’ ‘33.22’ ‘3.33’ ‘2.333’