Gzip 的 JavaScript 实现
问题:
有没有办法压缩 JSON 数据在将其发送到固定大小的服务器之前在客户端缓存?
答案:
编辑:为了获得更好的结果,请使用 http://pieroxy.net/blog 上找到的改进的 LZW 解决方案/pages/lz-string/index.html.
原始解决方案:
虽然 JavaScript 没有提供 Gzip 的实现,但 jsolait 库提供了 LZW 压缩和解压缩的函数。代码如下:
LZW 压缩函数:
function lzw_encode(s) { var dict = {}; var data = (s + "").split(""); var out = []; var currChar; var phrase = data[0]; var code = 256; for (var i = 1; i 1 ? dict[phrase] : phrase.charCodeAt(0)); dict[phrase + currChar] = code; code++; phrase = currChar; } } out.push(phrase.length > 1 ? dict[phrase] : phrase.charCodeAt(0)); for (var i = 0; i <p><strong>LZW 解压缩函数:</strong></p><pre class="brush:php;toolbar:false">function lzw_decode(s) { var dict = {}; var data = (s + "").split(""); var currChar = data[0]; var oldPhrase = currChar; var out = [currChar]; var code = 256; var phrase; for (var i = 1; i
以上是JavaScript 可以为具有固定大小缓存的服务器压缩 JSON 数据客户端吗?的详细内容。更多信息请关注PHP中文网其他相关文章!