为了获得最大的加载速度和页面效率,最好具有:

  • 一个18MB的JSON文件,其中包含字典数组,我可以将其加载并开始用作本机JavaScript对象(例如var myname = jsonobj[1]['name'])。
  • 一个4MB的CSV文件,我需要使用jquery.csv插件进行读取,然后使用查找来引用:var nameidx = titles.getPos('name'); var myname = jsonobj[1][nameidx])。

  • 我并不是真的希望有人能给我一个明确的答案,但是普遍的怀疑将非常有用。或有关如何测量的提示-也许我可以使用Developer Tools来检查负载速度和效率之间的权衡。

    我的怀疑是,使用(1)中的本机JavaScript对象带来的任何额外效率都将被CSV文件小得多的优势所抵消,但是我想知道其他人是否也这么认为。

    最佳答案

    你的情况如何?您是否正在编写某个Intranet网站,以便您知道浏览器用户正在使用什么并且对带宽有合理的期望,或者这是一个面向公众的网站?

    如果您可以控制人们使用的浏览器(例如因为他们是您的员工),请考虑利用客户端缓存。如果您试图说服人们使用这些数据,那么您可能应该考虑将数据分解成小块并通过XHR提供服务。

    如果您真的需要一次提供所有服务,那么:

  • 使用gzip
  • 您是否正在客户端大量处理数据?您实际上可能要经历多少个项目?如果您在任何给定的 session 中只能访问少于1,000个的内存,那么我想这14MB的节省是值得的。另一方面,如果您一直在将各种事物进行比较(因为您正在进行某种可视化或其他操作),那么我认为JSON将会奏效。

  • 换句话说:取决于。进行基准测试。

    07-24 09:44
    查看更多