<tbody id="86a2i"></tbody>


<dd id="86a2i"></dd>
<progress id="86a2i"><track id="86a2i"></track></progress>

<dd id="86a2i"></dd>
<em id="86a2i"><ruby id="86a2i"><u id="86a2i"></u></ruby></em>

    <dd id="86a2i"></dd>

    前言

    加密,其實就是對字符串的處理,主要包括查找,截取,替換,當然我們還可以使用正則

    前端數據是從后端拿到的,關于數據敏感的問題,可能在開發過程中經常遇到,我們也知道前端對數據的處理也都是表皮層,沒法達到真正的安全目的。但,沒辦法,有時候我們還是要去做一些本不該做的事情來讓某些東西看似合理。

    1、手機號脫敏

    const phone = "13031325689";
    const str = phone.replace(/(\d{3})\d*(\d{4})/, '$1****$2')
    console.log(str) // 130****5689
    

    2、身份證號脫敏

    const card = "512326199102115645";
    const str1 = card.replace(/(\w{6})\w*(\w{4})/,'$1********$2'); 
    console.log(str) // 512326********5645
    

    $1,$2是表示的小括號里的內容;$1是第一個小括號里的 ,$2是第2個小括號里的 ,以此類推

    例如手機號脫敏:

    (\d{3}) = 130

    (\d{4}) = 5689

    3、ios瀏覽器兼容問題

    之前用的正則表達式零寬斷言來進行脫敏,導致頁面打開空白

    safari瀏覽器不支持正則表達式中攜帶零寬斷言。如果在正則中攜帶零寬斷言,會導致頁面空白,并且控制臺報錯:

    SyntaxError: Invalid regular expression: invalid group specifier name
    或者

    SyntaxError: Invalid regular expression: unrecognized character after (?

    使用方式如下(目前只兼容安卓,safari也不支持):

    // 正則替換 身份證號脫敏
    let idCardNum = '512326199102115645';
    idCardNum = idCardNum .replace(/(?<=\d{3})\d{12}(?=\d{2})/,"************")
    console.log(idCardNum) // 512*************45
    
    // 正則替換 手機號脫敏
    let mobile = '13031325689';
    mobile = mobile.replace(/(?<=\d{3})\d{5}(?=\d{2})/,"*****")
    console.log(mobile) // 130*****89

    補充:js 加密姓名和加密身份證號碼

    例子加密姓名

    EncryptName(name) {
    ? ? let newStr;
    ? ? if(name.length === 2) {
    ? ? ? newStr = name.substr(0, 1) + '*';
    ? ? } else if (name.length > 2) {
    ? ? ? let char = '';
    ? ? ? for (let i = 0, len = name.length - 2; i < len; i++) {
    ? ? ? ? char += '*';
    ? ? ? }
    ? ? ? newStr = name.substr(0, 1) + char + name.substr(-1, 1);
    ? ? } else {
    ? ? ? newStr = name;
    ? ? }
    
    ? ? return newStr;
    ?}

    加密身份證

    EncryptCert(cert){
        return cert.replace(/^(.{3})(?:\d+)(.{3})$/, "$1*********$2")
    }
    

    總結

    原文地址:https://blog.csdn.net/weixin_43743175/article/details/125375242

    相關文章:

    免费一级a片在线播放视频|亚洲娇小性XXXX色|曰本无码毛片道毛片视频清|亚洲一级a片视频免费观看
    <tbody id="86a2i"></tbody>

    
    
    <dd id="86a2i"></dd>
    <progress id="86a2i"><track id="86a2i"></track></progress>

    <dd id="86a2i"></dd>
    <em id="86a2i"><ruby id="86a2i"><u id="86a2i"></u></ruby></em>

      <dd id="86a2i"></dd>