//base64.encode64(JSON.stringify(p))
var base64 = (function() {
    var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    return {
        "encode64": encode64,
        "decode64": decode64
    }

    function encode64(input) {
        input = strUnicode2Ansi(input);
        var output = "";
        var chr1, chr2, chr3 = "";
        var enc1, enc2, enc3, enc4 = "";
        var i = 0;
        do {
            chr1 = input.charCodeAt(i++);
            chr2 = input.charCodeAt(i++);
            chr3 = input.charCodeAt(i++);
            enc1 = chr1 >> 2;
            enc2 = ((chr1 & 3) > 4);
            enc3 = ((chr2 & 15) > 6);
            enc4 = chr3 & 63;
            if (isNaN(chr2)) {
                enc3 = enc4 = 64;
            } else if (isNaN(chr3)) {
                enc4 = 64;
            }
            output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4);
            chr1 = chr2 = chr3 = "";
            enc1 = enc2 = enc3 = enc4 = "";
        } while (i < input.length);
        return output;
    }

    function decode64(input) {
        var output = "";
        var chr1, chr2, chr3 = "";
        var enc1, enc2, enc3, enc4 = "";
        var i = 0;
        if (input.length % 4 != 0) {
            return "";
        }
        var base64test = /[^A-Za-z0-9\+\/\=]/g;
        if (base64test.exec(input)) {
            return "";
        }
        do {
            enc1 = keyStr.indexOf(input.charAt(i++));
            enc2 = keyStr.indexOf(input.charAt(i++));
            enc3 = keyStr.indexOf(input.charAt(i++));
            enc4 = keyStr.indexOf(input.charAt(i++));
            chr1 = (enc1 > 4);
            chr2 = ((enc2 & 15) > 2);
            chr3 = ((enc3 & 3)  127) varasc = UnicodeToAnsi(varasc);
            if (varasc > 255) {
                var varlow = varasc & 65280;
                varlow = varlow >> 8;
                var varhigh = varasc & 255;
                temp += String.fromCharCode(varlow) + String.fromCharCode(varhigh);
            } else {
                temp += String.fromCharCode(varasc);
            }
        }
        return temp;
    }

    function strAnsi2Unicode(asContents) {
        var len1 = asContents.length;
        var temp = "";
        var chrcode;
        for (var i = 0; i < len1; i++) {
            var varasc = asContents.charCodeAt(i);
            if (varasc > 127) {
                chrcode = AnsiToUnicode((varasc 

快捷键:jsbase64

源:

sublime_text格式

<snippet>
    <content><![CDATA[
//base64.encode64(JSON.stringify(p))
var base64 = (function() {
    var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    return {
        "encode64": encode64,
        "decode64": decode64
    }

    function encode64(input) {
        input = strUnicode2Ansi(input);
        var output = "";
        var chr1, chr2, chr3 = "";
        var enc1, enc2, enc3, enc4 = "";
        var i = 0;
        do {
            chr1 = input.charCodeAt(i++);
            chr2 = input.charCodeAt(i++);
            chr3 = input.charCodeAt(i++);
            enc1 = chr1 >> 2;
            enc2 = ((chr1 & 3) > 4);
            enc3 = ((chr2 & 15) > 6);
            enc4 = chr3 & 63;
            if (isNaN(chr2)) {
                enc3 = enc4 = 64;
            } else if (isNaN(chr3)) {
                enc4 = 64;
            }
            output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4);
            chr1 = chr2 = chr3 = "";
            enc1 = enc2 = enc3 = enc4 = "";
        } while (i < input.length);
        return output;
    }

    function decode64(input) {
        var output = "";
        var chr1, chr2, chr3 = "";
        var enc1, enc2, enc3, enc4 = "";
        var i = 0;
        if (input.length % 4 != 0) {
            return "";
        }
        var base64test = /[^A-Za-z0-9\+\/\=]/g;
        if (base64test.exec(input)) {
            return "";
        }
        do {
            enc1 = keyStr.indexOf(input.charAt(i++));
            enc2 = keyStr.indexOf(input.charAt(i++));
            enc3 = keyStr.indexOf(input.charAt(i++));
            enc4 = keyStr.indexOf(input.charAt(i++));
            chr1 = (enc1 > 4);
            chr2 = ((enc2 & 15) > 2);
            chr3 = ((enc3 & 3)  127) varasc = UnicodeToAnsi(varasc);
            if (varasc > 255) {
                var varlow = varasc & 65280;
                varlow = varlow >> 8;
                var varhigh = varasc & 255;
                temp += String.fromCharCode(varlow) + String.fromCharCode(varhigh);
            } else {
                temp += String.fromCharCode(varasc);
            }
        }
        return temp;
    }

    function strAnsi2Unicode(asContents) {
        var len1 = asContents.length;
        var temp = "";
        var chrcode;
        for (var i = 0; i < len1; i++) {
            var varasc = asContents.charCodeAt(i);
            if (varasc > 127) {
                chrcode = AnsiToUnicode((varasc 
]]></content>
   <tabTrigger>jsbase64(js base64编码)</tabTrigger>
   <scope></scope>
</snippet>
点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部