【JavaScript】加密号码将中间四位改为*
在实习的项目中,发现要对用户提交的手机号码进行加密显示,百度后,总结了以下四种方法(参考):
- 利用数组splice,split,join方法
var tel = 18810399133
tel = '' + tel
var ary = tel.split('')
ary.splice(3, 4, '****')
var tel1 = ary.join('')
console.log(tel1) // 188****9133
- 利用字符串的substr方法
var tel = 18810399133
tel = '' + tel
var tel1 = tel.substr(0, 3) + '****' + tel.substr(7)
console.log(tel1) // 188****9133
- 利用字符串substring方法
var tel = 18810399133
tel = '' + tel
var tel1 = tel.replace(tel.substring(3, 7), '****')
console.log(tel1) // 188****9133
- 利用正则(推荐)
var tel = 18810399133
tel = '' + tel
var reg = /(\d{3})\d{4}(\d{4})/
var tel1 = tel.replace(reg, '$1****$2')
console.log(tel1)