Javascript客户端数据压缩

Sof*_*oft 9 javascript compression processing.js

我正在尝试通过processingjs开发一个画笔应用程序.此API具有函数loadPixels(),它将RGB值加载到数组中.现在我想将数组存储在服务器db中.

问题是数组的大小,当我转换为一个大小为5 MB的字符串.

最好的解决方案是在javascript级别进行压缩吗?怎么做?

And*_*y E 8

有关LZW压缩示例,请参阅http://rosettacode.org/wiki/LZW_compression#JavaScript.它适用于具有重复模式的较长字符串.

来自维基百科关于LZW的文章:

字典被初始化为包含与所有可能的输入字符相对应的单字符字符串(如果它们被使用,除了清除和停止代码之外别无其他).该算法通过在输入字符串中扫描连续更长的子字符串来工作,直到找到不在字典中的字符串.当找到这样的字符串时,从字典中检索字符串的索引减去最后一个字符(即字典中最长的子字符串),并将其发送到输出,并添加新字符串(包括最后一个字符)使用下一个可用代码到字典.然后将最后一个输入字符用作扫描子字符串的下一个起始点.

以这种方式,连续更长的字符串被登记在字典中并且可用于随后的编码作为单个输出值.该算法最适用于具有重复模式的数据,因此消息的初始部分将看到很少的压缩.然而,随着消息的增长,压缩比渐近地趋于最大.

  • 此实现在某些情况下不起作用。我正在编码大量HTML,但解码不正确。保持返回null。请改用此实现:https://gist.github.com/revolunet/843889 (2认同)