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>

  

posted on   ygunoil  阅读(8258)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示