【发布时间】:2013-01-14 22:08:05
【问题描述】:
我正在使用客户端 javascript 创建 html 页面,这将在页面加载时加载大约 150mb 的 XML 数据文件。当文件大小约为 5 mb 时,将整个数据加载到数组中需要 30 秒。但是当我将文件更改为 140 mb 时,该页面在 Firefox 中没有响应并且在 chrome 中突然崩溃。我的 sn-p 加载数据将处理 xml 中的每个单独的标签。我的问题是,javascript 的堆大小是否有限制?任何学术文章资源都可用于强调我的研究。
$(document).ready(function () {
// Open the xml file
$.get("xyz.xml", {}, function (xml) {
// Run the function for each in the XML file
$('abc', xml).each(function (i) {
a = $(this).find("a").text();
b = $(this).find("b").text();
c = $(this).find("c").text();
ab = $(this).find("ab").text();
bc = $(this).find("bc").text();
cd = $(this).find("cd").text();
de = $(this).find("de").text();
// process data
dosomething(a,b,c,ab,bc,cd,de);
}); }); });
【问题讨论】:
-
我之前用 javascript 读取了数百兆字节的文件并且没有任何问题,不过我不是在浏览器中这样做的。
-
@BenjaminGruenbaum 你是从这么大的 XML 文件中实例化 DOM 吗?
-
@Pointy,不确定它本身是否符合 dom,我在 node.js 上使用 JSDOM 和 jQuery。它比 C# 上的 CsQuery 慢,但它仍然是合理的
标签: javascript jquery xml