【发布时间】:2011-02-18 16:43:55
【问题描述】:
我有一个通用的 JavaScript 问题。我会给你我的情景,然后问你这个问题。
场景
我正在制作一张(目前)超过 3000 行的表格,并且它每天都在增长 5-10。我正在使用 javascript 插件来设置此表的样式并添加有用的功能。目前完全加载页面需要 15 秒,之后一切运行顺利(排序、分页等)。不过,这是一个非常缓慢的初始加载。该插件提供了一种减少 DOM 解析的方法,您可以向它传递要放置在表格中的信息数组,我对此非常感兴趣。但是,我想尽可能快,因为仍然会有一个 3000 行的数组(每行有 11 列,平均 10 个字符)。
问题
使用 JavaScript const 存储这个巨大的数组会不会快很多?具体来说,JavaScript 是否知道在作为参数传递时不要将 const 放入堆栈?
此外,这对 JavaScript 来说是否太多了?我是否应该放弃这个想法并立即开始使用 AJAX(这意味着功能要慢得多,但页面加载要快得多)?
谢谢!
【问题讨论】:
-
如果是我的网站,我会使用 AJAX 来避免往返这么多数据。
-
1) 什么是“javascript 插件”? 2) 如果您正在处理 DOM,则不再是“这对于 JavaScript 来说是否太多了?”的问题。而是“对于浏览器的 DOM 实现来说,这是否太多了?”。 3)我喜欢空中报价。
-
这是我正在考虑使用的:
http://www.datatables.net/examples/data_sources/js_array.html -
@Roatin:javascript 数组将在内部使用,并且仅根据需要创建 DOM 对象,因此即使一次 100 行也会很快(比初始 3000+ 快得多,然后将其缩小到 100 )
-
请注意,“const”甚至不适用于所有浏览器,尤其是 IE。
标签: javascript arrays performance constants