用于纯嵌入式环境的纯JavaScript编写的XML解析器

时间:2013-12-19 22:21:03

标签: javascript dom xml-parsing

我正在寻找一个可以在javascript环境中运行的解析器,在该环境中无法访问documentDOMParser或任何其他浏览器扩展。 javascript应用程序可以在node.js中的浏览器(IE,Firefox,Chrome,Safari ...)中运行,但它注定要主要运行在V8或SpiderMonkey环境中。在不支持通常的XML解析器的情况下分发环境,我无法解析包含来自javascript的有效XML的字符串。

所有依赖DOMParserActiveXObject等浏览器扩展程序的库都会失败,并显示 ReferenceError: DOMParser is not defined 等消息。

不需要访问文件系统(我需要从字符串解析为类似DOM的结构)。

2 个答案:

答案 0 :(得分:4)

marknote是正确的解决方案here(感谢Pekka웃)。从远程位置加载时,库使用XMLHttpRequest,但是从字符串解析时,它集成了一个用javascript编写的独立XML解析器,这使得它适用于嵌入式解释器:

var text="<note>";
text=text+"<content>whatever blablabla</content>";
text=text+"</note>";


var parser = new marknote.Parser();
var doc = parser.parse(text);

native.log(doc.toString()); // show the formatted XML

答案 1 :(得分:-3)

Checkout jQuery.parseXML - 一个基本的XML解析器。