1 | 数据脱敏常用于手机号、身份证号等敏感信息中 |
方法一:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | /** * 关键信息隐藏 * @param str 字符串 * @param frontLen 字符串前面保留位数 * @param endLen 字符串后面保留位数 * @returns {string} */ function hideCode(str, frontLen, endLen) { var len = str.length - frontLen - endLen; var xing = '' ; for ( var i = 0; i < len; i++) { xing += '*' ; } return str.substring(0, frontLen) + xing + str.substring(str.length - endLen); }; |
方法二:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /** * str:字符串 beginStr:开始位置 endStr:结束位置; */ common.desensitization = function (str,beginStr,endStr){ var len = str.length; var leftStr = str.substring(0,beginStr); var rightStr = str.substring(endStr,len); var str = '' var i = 0; try { for (i = 0; i < endStr-beginStr;i++) { str = str + '*' ; } } catch (error) { } str = leftStr + str + rightStr; return str; } |
方法三:
1 2 3 4 5 6 7 8 9 10 11 12 | function desensitization(str, beginLen, endLen){ var len = str.length; var firstStr = str.substr(0, beginLen); var lastStr = str.substr(endLen); var middleStr = str.substring(beginLen, len-Math.abs(endLen)).replace(/[\s\S]/ig, '*' ); tempStr = firstStr+middleStr+lastStr; return tempStr; } desensitization( '12345678901234' ,4, -4); |
方法四:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 数字类型 certificatecodecopy = certificatecode.replace(/^(.{6})(?:\d+)(.{4})$/, "\$1****\$2" ); 所有类型 enginenocopy = engineno.replace(/^(.{2})(?:\w+)(.{1})$/, "\$1****\$2" ); enginenocopy = engineno.replace(/^(.{4})(?:\w+)(.{4})$/, "\$1****\$2" ); // vue中使用 <el-table-column width= "200px" prop= "credentialsNum" label= "身份证号码" align= "center" > <template slot-scope= "scope" > <p v- if = "scope.row.credentialsNum != null && scope.row.credentialsNum != '' " > {{scope.row.credentialsNum.replace(/^(.{6})(?:\d+)(.{4})$/, "$1****$2" )}} </p> <p v- else >未知</p> </template> </el-table-column> |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗