星号替换手机号码的中间四位数
应用场景
在个人中心或者中奖人名单是用户的手机号码,为了保护用户隐私,需要将手机号码的中间四位数替换为星号!
替换的用法
phoneNumber.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2');
应用实例
function withPhone(phoneArr){
let arr = [];
phoneArr.forEach(o => arr.push(o.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')));
return arr;
}
let phoneArr = ['15669335699','15669335699','15669335699','15669335699','15669335699'];
let newArr = withPhone(phoneArr);
console.log(newArr)
//["156****5699", "156****5699", "156****5699", "156****5699", "156****5699"]
withPhone函数解析
- 由于是对手机号码的批量处理,所以对传入手机号码的数组phoneArr进行forEach方法的循环;
- 对循环的当前值进行正则匹配替换方法replace;
- 由于replace方法是返回一个替换后的一个新的字符串,所以需要一个arr数组接收;
- 循环处理完成,返回处理数据的收集函数arr。