上代码:
/**
* 数据替换 *** 号
* @val 要替换的数据
* @head 头部保留,默认3
* @last 尾部保留,默认4
*/
export const replaceStar = (val, head = 3, last = 4) => {
if (!val) { // 字符串为空直接返回
return val;
}
if (val.length <= 10) { // 少于十位的字符串只显示前三位
last = 0;
}
let str = '*';
let len = val.length - head - last;
str = str.repeat(len); // * 重复len次
let re = new RegExp('(.{' + head + '}).*(.{' + last + '})', ''); // 动态的正则验证
return val.replace(re, '$1'+str+'$2'); // 替换
};

本文介绍了一种使用JavaScript进行数据脱敏的方法,通过自定义函数replaceStar实现对敏感信息的星号替换,同时保持部分头部和尾部信息不变。该方法适用于对电话号码、身份证号等敏感数据的处理。

1338

被折叠的 条评论
为什么被折叠?



