身份信息脱敏处理 - yuzhouxiaogegit/blog GitHub Wiki
身份信息脱敏处理
/**
* 关键信息隐藏
* @param str 字符串
* @param frontLen 字符串前面保留位数
* @param endLen 字符串后面保留位数
* @returns {string}
*/
function hideCode(str, frontLen, endLen) {
str = JSON.stringify(str || '').replace(/[\'\"]/g, "");
let len = str.length - Number(frontLen || 0) - Number(endLen || 0);
let xing = '';
for (let i = 0; i < len; i++) {
xing += '*';
}
if (str.length >= (frontLen + endLen)) {
return str.substring(0, frontLen) + xing + str.substring(str.length - endLen);
}
return str;
}
console.log(hideCode(13015899696, 3, 4)) // 130****9696
console.log(hideCode(13015899696, -1, -1)) // 13015899696