1

我能够使用 pako.js 解压缩 JavaScript 中的字符串

http://jsfiddle.net/9yH7M/1/

// Get some base64 encoded binary data from the server. Imagine we got this:
var b64Data     = 'H4sIAAAAAAAAAwXB2w0AEBAEwFbWl2Y0IW4jQmziPNo3k6TuGK0Tj/ESVRs6yzkuHRnGIqPB92qzhg8yp62UMAAAAA==';

// Decode base64 (convert ascii to binary)
var strData     = atob(b64Data);

// Convert binary string to character-number array
var charData    = strData.split('').map(function(x){return x.charCodeAt(0);});

// Turn number array into byte-array
var binData     = new Uint8Array(charData);

// Pako magic
var data        = pako.inflate(binData);

// Convert gunzipped byteArray back to ascii string:
var strData     = String.fromCharCode.apply(null, new Uint16Array(data));

// Output to console
console.log(strData);

我想要一种压缩字符串的方法,并且可以通过上面的代码使用 pako 和 gzip 解压缩输出。

我怎样才能做到这一点?

4

1 回答 1

3

压缩:

let compressed_str = pako.gzip(str, {to: 'string'});

减压:

let original_str = pako.ungzip(compressed_str, { to: 'string' });

于 2018-06-06T05:50:24.473 回答