我的 Javascript 应用程序正在从服务器下载相当多的数据,我想除了服务器完成的普通 gzip 之外,我还可以用某种二进制格式而不是文本 JSON 对数据进行编码。
是否有执行此操作的标准方法?
理想情况下,它应该是一些可以获取 JSON 文本文件并将其转换为通用二进制格式的小工具和一个对其进行解码的小型 Javascript 库。
此外,在 XHR 中是否需要做一些特殊的事情来传递二进制数据?
最佳答案
如果 gzip 压缩得不够好,您的二进制格式很可能也不会,特别是如果您不希望能够在合理的时间内通过 javascript 对其进行解码。
请记住,使用 gzip 时的解压缩是由浏览器本地完成的,并且比您在 javascript 中执行的任何操作都要快几个数量级。
如果你觉得 JSON 反序列化太慢,因为你支持像 ie7 这样的旧浏览器,它本身不解码 JSON 但依赖于 eval
来完成工作,考虑从 JSON 到基于字符串拆分的自定义编码,反序列化速度要快得多。
要获得灵感,请尝试阅读这篇文章:
http://code.flickr.com/blog/2009/03/18/building-fast-client-side-searches/
关于javascript - JSON 的二进制编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5165660/