美文网首页
微信小程序atob自定义。解决can not find vari

微信小程序atob自定义。解决can not find vari

作者: YoungHer | 来源:发表于2024-09-25 21:39 被阅读0次

weAtob(string) {

let b64re = /^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/;

let b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="

    string = String(string).replace(/[\t\n\f\r ]+/g, "");

    if (!b64re.test(string))

        throw new TypeError("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");

    string += "==".slice(2 - (string.length & 3));

    var bitmap, result = "", r1, r2, i = 0;

    for (; i < string.length;) {

        bitmap = b64.indexOf(string.charAt(i++)) << 18 | b64.indexOf(string.charAt(i++)) << 12 |

            (r1 = b64.indexOf(string.charAt(i++))) << 6 | (r2 = b64.indexOf(string.charAt(i++)));

        result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255) :

            r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255) :

                String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);

    }

    return result;

},

相关文章

网友评论

      本文标题:微信小程序atob自定义。解决can not find vari

      本文链接:https://www.haomeiwen.com/subject/alxhrjtx.html