> 웹 프론트엔드 > H5 튜토리얼 > HTML5는 기본적으로 Base64 인코딩 및 디코딩을 지원합니다.

HTML5는 기본적으로 Base64 인코딩 및 디코딩을 지원합니다.

大家讲道理
풀어 주다: 2016-11-10 14:48:19
원래의
5727명이 탐색했습니다.

이 방법은 IE10+, Chrome 및 기타 최신 브라우저만 지원합니다.

기본 지원에 적합

(function(){
    var Base64 = {
        encode : function(str){
            return window.btoa(unescape(encodeURIComponent(str)));
        },
        decode : function(str){
            return decodeURIComponent(escape(window.atob(str)));
        }
    };
    window.BASE64 = Base64;
})();
로그인 후 복사

이전 버전 호환

(function() {
    if (!window.btoa) {
        var a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
        window.btoa = function(c) {
            var d = "";
            var m, k, h = "";
            var l, j, g, f = "";
            var e = 0;
            do {
                m = c.charCodeAt(e++);
                k = c.charCodeAt(e++);
                h = c.charCodeAt(e++);
                l = m >> 2;
                j = ((m & 3) << 4) | (k >> 4);
                g = ((k & 15) << 2) | (h >> 6);
                f = h & 63;
                if (isNaN(k)) {
                    g = f = 64
                } else {
                    if (isNaN(h)) {
                        f = 64
                    }
                }
                d = d + a.charAt(l) + a.charAt(j) + a.charAt(g) + a.charAt(f);
                m = k = h = "";
                l = j = g = f = ""
            } while (e < c.length);
            return d
        };
        window.atob = function(c) {
            var d = "";
            var m, k, h = "";
            var l, j, g, f = "";
            var e = 0;
            do {
                l = a.indexOf(c.charAt(e++));
                if (l < 0) {
                    continue
                }
                j = a.indexOf(c.charAt(e++));
                if (j < 0) {
                    continue
                }
                g = a.indexOf(c.charAt(e++));
                if (g < 0) {
                    continue
                }
                f = a.indexOf(c.charAt(e++));
                if (f < 0) {
                    continue
                }
                m = (l << 2) | (j >> 4);
                k = ((j & 15) << 4) | (g >> 2);
                h = ((g & 3) << 6) | f;
                d += String.fromCharCode(m);
                if (g != 64) {
                    d += String.fromCharCode(k)
                }
                if (f != 64) {
                    d += String.fromCharCode(h)
                }
                m = k = h = "";
                l = j = g = f = ""
            } while (e < c.length);
            return d
        }
    }
    var b = {
        encode: function(c) {
            return window.btoa(unescape(encodeURIComponent(c)))
        },
        decode: function(c) {
            return decodeURIComponent(escape(window.atob(c)))
        }
    };
    window.BASE64 = b
})();
로그인 후 복사


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿