1、手机号隐藏中间4位
export function phoneSeparated(tel) {
if (tel) {
tel = tel.substring(0, 3) + ' ' + tel.substring(3, 7) + ' ' + tel.substring(7, 11);
}
return tel;
}
2、金额千位符展示,保留2位小数
export function goldFormat(val) {
// 金额转换 分->元 保留2位小数 并每隔3位用逗号分开 1,234.56
if (val !== undefined) {
var str = parseFloat(val).toFixed(2) + ''
var intSum = str.substring(0, str.indexOf('.')).replace(/\B(?=(?:\d{3})+$)/g, ',') // 取到整数部分
var dot = str.substring(str.length, str.indexOf('.')) // 取到小数部分搜索
var ret = intSum + dot
return ret
} else {
return '0.000'
}
}
3、不能输入2个以上小数点
formatMoneyWith6digts2(value) {
let newValue;
function NumberCheck(num) {
var re = /^\d*\.{0,1}\d{0,2}$/;
return re.exec(num) != null;
}
if (!NumberCheck(value)){
newValue = value.substring(0, value.length - 1)
} else if ((value.split('.')).length - 1 === 1 && value.length === 1) {
newValue = ""
} else {
var p11 = /[^[+-]?\d]/g;
var p22 = /(^[+-]?\d{6})\d*$/g;
var p44 = /(^[+-]?\d*)\6/g;
newValue = value.replace(p11, "").replace(p22, "$1").replace(p44, "$1$9");
console.log(newValue)
}
var p1 = /[^[+-]?\d\.]/g; // 过滤非数字及小数点 /g :所有范围中过滤
var p2 = /(\.\d{2})\d*$/g;
var p4 = /(\.)(\d*)\1/g;
newValue = newValue.replace(p1, "").replace(p2, "$1").replace(p4, "$1$9");
newValue = newValue.replace(/[^[+-]?\d]/g, '');
var p5 = /\.+/g; //多个点的话只取1个点,屏蔽1....234的情况
newValue = newValue.replace(p5, ".");
var p6 = /(\.+)(\d+)(\.+)/g; //屏蔽1....234.的情况
newValue = newValue.replace(p6, "$1$2") // 屏蔽最后一位的.
return newValue
},