javascript - JSON 的二进制编码?

标签 javascript json encoding binaryfiles

我的 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/

相关文章:

json - 解码后的 json 响应返回空结构

javascript - 无法在 React Native 中使用 fetch 执行 POST 请求

java - RestEasy 文件上传 - 如何正确确定文件名编码?

java - 即使我将编码设置为 UTF-8,文件也不会以 UTF-8 编码保存

Java读取西里尔语CSV文件,写入奇怪的字符

javascript - 如何在javascript中合并两个嵌套对象

javascript - 如何更新并发送 Backbone 模型到express后端

javascript - 来自 Google Vision API 的空响应以及存储在 Google Cloud Storage 中的图像

javascript - HTML5 input=时间不会通过javascript设置

json - 从android中的httppost获取参数到grails