日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS 脱敏通用方法

發(fā)布時(shí)間:2023/12/20 javascript 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS 脱敏通用方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

  • 前言
  • 具體實(shí)現(xiàn)

前言

記錄一些常用的脫敏通用方法


具體實(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;}}
  • 測(cè)試
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)
  • 結(jié)果

- End - ﹀ ﹀ ﹀ 夢(mèng)想是咸魚 關(guān)注一下吧

總結(jié)

以上是生活随笔為你收集整理的JS 脱敏通用方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。