Rumah >hujung hadapan web >tutorial js >js实现gzip解压缩的代码实现

js实现gzip解压缩的代码实现

不言
不言asal
2018-08-11 16:23:213359semak imbas

本篇文章给大家带来的内容是关于js实现gzip解压缩的代码实现,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

代码如下:

<!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>

相关推荐:

vue.js组件中全局注册和局部注册的简单介绍以及实例分析

js如何来实现获取滚动条宽度(代码示例

Atas ialah kandungan terperinci js实现gzip解压缩的代码实现. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn