Heim  >  Artikel  >  Web-Frontend  >  js-Code-Implementierung für die GZIP-Dekomprimierung

js-Code-Implementierung für die GZIP-Dekomprimierung

不言
不言Original
2018-08-11 16:23:213248Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Code-Implementierung der gzip-Dekomprimierung in js. Er hat einen gewissen Referenzwert. Ich hoffe, dass er für Sie hilfreich ist.

Der Code lautet wie folgt:

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/pako/1.0.6/pako.min.js"></script>
    </head>
    <body>
    <input id="content" type="text">
    <button onclick="encode()">encode</button>
    <button onclick="decode()">decode</button>
    <div id="ciphertext"></div>
    </body>
    </html>
    <script type="text/javascript">
    function encode(){
    var str = $(&#39;#content&#39;).val();
    str = window.btoa(pako.gzip(str, {to: "string"}))
    $(&#39;#ciphertext&#39;).text(str);
}
function decode(){
    var encodedData = $(&#39;#content&#39;).val();    
    var decodedData = window.atob(encodedData);    
    var charData    = decodedData.split(&#39;&#39;).map(function(x){return x.charCodeAt(0);});  
    var binData     = new Uint8Array(charData);  
    var data        = pako.inflate(binData);  
    decodedData     = String.fromCharCode.apply(null, new Uint16Array(data));  

    $(&#39;#ciphertext&#39;).text(decodedData);
}
</script>

Verwandte Empfehlungen:

Eine kurze Einführung und Beispielanalyse der globalen Registrierung und lokalen Registrierung in vue.js-Komponenten

So erhalten Sie die Breite der Bildlaufleiste mit js (Codebeispiel

Das obige ist der detaillierte Inhalt vonjs-Code-Implementierung für die GZIP-Dekomprimierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn