需求1: 11位手机号中间四位脱敏显示,例如:187****1234
实现1:
function noPassByMobile(str){
if(null != str && str != undefined){
var pat=/(\d{3})\d*(\d{4})/;
return str.replace(pat,'$1****$2');
} else {
return "";
}
}
需求2: 姓名脱敏处理,规则:3个字以内脱敏第一个字,4—6个字脱敏前两个字,大于6个字脱敏第3—6个字,示例:张三(*三)、张三水(*三水)、长孙无忌(**无忌)、罗斯托罗司机格(罗斯XXXX格)
实现2:
function noPassByName(str){
if(null != str && str != undefined){
if(str.length <= 3){
return "*" + str.substring(1,str.length);
} else if(str.length > 3 && str.length <= 6){
return "**" + str.substring(2,str.length);
} else if(str.length > 6){
return str.substring(0,2) + "****" + str.substring(6,str.length)
}
} else {
return "";
}
}