首页 > 技术文章 > 【JavaScript】加密号码将中间四位改为*

cqkjxxxx 2020-06-17 09:34 原文

在实习的项目中,发现要对用户提交的手机号码进行加密显示,百度后,总结了以下四种方法(参考):

  • 利用数组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)

推荐阅读