【发布时间】:2009-06-05 20:05:01
【问题描述】:
我正在使用 YUI DataTable 开发一个应用程序,我的结果集相当大(2,000 多行),解析需要 YAHOO.lang.JSON.parse() 大约 5-6 秒。
在此期间,浏览器将完全无法使用。
有没有人知道如何获取 JSON 响应并将其解析为带有超时的 JS?说...每 50-100 毫秒 100 行,而不是一次解析整个内容并在整个持续时间内锁定浏览器?
【问题讨论】:
标签: javascript json
我正在使用 YUI DataTable 开发一个应用程序,我的结果集相当大(2,000 多行),解析需要 YAHOO.lang.JSON.parse() 大约 5-6 秒。
在此期间,浏览器将完全无法使用。
有没有人知道如何获取 JSON 响应并将其解析为带有超时的 JS?说...每 50-100 毫秒 100 行,而不是一次解析整个内容并在整个持续时间内锁定浏览器?
【问题讨论】:
标签: javascript json
也许您应该使用其他格式。查看Building Fast Client-side Searches 并了解 Flickr 如何解决类似问题。
【讨论】:
您需要通过多个请求分块获取它,然后在客户端手动合并数据。
如果您的数据并不复杂,您可能想尝试自己评估 json 响应。大多数 JSON 解析器的逻辑比你发现的要多得多。
var data = eval('(' + response + ')');
看看这需要多长时间。
【讨论】: