生活随笔
收集整理的這篇文章主要介紹了
JS 脱敏通用方法
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
前言
記錄一些常用的脫敏通用方法
具體實(shí)現(xiàn)
/*** 脫敏相關(guān)操作*/
export class Desensitized {static phoneReg = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{4}(\d{4})$/; // 手機(jī)號(hào)正則校驗(yàn)static idNoReg = /(\d{6})(\d*)(\w{3})/; // 簡(jiǎn)易身份證號(hào)碼正則static addrReg = /(.{9})(.*)/; // 地址正則/*** 名字脫敏 保留首位* @param fullName* @returns {string}*/static desensitizedName (fullName) {if (!fullName) {return "";}let str = fullName.substr(0, 1);for (let i = 0; i < fullName.length - 1; i++) {str += '*';}return str;}/*** 脫敏公用* @param str 脫敏字符串* @param begin 起始保留長(zhǎng)度,從0開始* @param end 結(jié)束保留長(zhǎng)度,到str.length結(jié)束* @returns {string}*/static desensitizedCommon (str, begin, end) {if (!str && (begin + end) >= str.length) {return "";}let leftStr = str.substring(0, begin);let rightStr = str.substring(str.length - end, str.length);let strCon = ''for (let i = 0; i < str.length - end - begin; i++) {strCon += '*';}return leftStr + strCon + rightStr;}/*** 手機(jī)號(hào)脫敏* @param str* @returns {string|*|string}*/static desensitizedPhone (str) {if (!str) {return "";}return str.replace(this.phoneReg, '$1****$2');}/*** 身份證號(hào)脫敏* @param str* @returns {string|*|string}*/static desensitizedIdNo (str) {if (!str) {return "";}if(this.idNoReg.test(str)){let text1 = RegExp.$1;let text3 = RegExp.$3;let text2 = RegExp.$2.replace(/./g,"*");return text1 + text2 + text3;}return str;}/*** 地址脫敏* @param str* @returns {string|*|string}*/static desensitizedAddr(str){if (!str) {return "";}if(this.addrReg.test(str)){let text1 = RegExp.$1;let text2 = RegExp.$2.replace(/./g,"*");return text1 + text2 ;}return str;}}
import { Desensitized } from "./utils/desensitized";let obj = {name: Desensitized.desensitizedName("張三"),mobile: Desensitized.desensitizedCommon("13888888888", 3,4),phone: Desensitized.desensitizedPhone("13888888888"),idNo: Desensitized.desensitizedIdNo("530381199908133239"),addr: Desensitized.desensitizedAddr("四川省成都市高新區(qū)xxx小區(qū)31棟123號(hào)")
}console.log(obj)
- End -
﹀
﹀
﹀
夢(mèng)想是咸魚
關(guān)注一下吧
總結(jié)
以上是生活随笔為你收集整理的JS 脱敏通用方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。