XML/XSLT in JavaScript

XML/XSLT in JavaScript

本文关键字:JavaScript in XSLT XML      更新时间:2023-09-26

我一直在研究在JavaScript中使用XML和XSLT的例子,我不明白IE中不同选项之间的差异:

  • Msxml2.DOMDocument.6.0
  • Msxml2.DOMDocument.3.0
  • Microsoft.XMLHTTP
  • Microsoft.XMLDom

因此,在使用该方法时:

var xml = new ActiveXObject("Xxxxxxx");

xxxxxx是上述变体之一。

我应该使用哪个? 它们之间有什么区别?

Microsoft的基于COM的XML软件包称为MSXML,存在于可以在Windows系统上共存的不同版本中。所有当前支持的Microsoft操作系统版本以及Microsoft操作系统的最新支持服务包都随 MSXML 3 和 MSXML 6 一起提供。在 JScript 中传递给ActiveXObject的程序 ID 记录在 MSXML 3 中:http://msdn.microsoft.com/en-us/library/ms766426%28v=vs.85%29,MSXML 6 在此处记录:http://msdn.microsoft.com/en-us/library/ms764622%28v=vs.85%29。如您所见,程序 ID 以"MSXML2"开头,MSXML 版本在末尾附加,因此 MSXML 3.0 DOM 文档具有程序 ID MSXML2.DOMDocument.3.0,MSXML 6.0 DOM 文档的程序 ID Msxml2.DOMDocument.6.0

Microsoft. 开头的程序 ID 是旧版 MSXML 引入的旧程序 ID,如果 MSXML 3 和 MSXML 6 是操作系统的一部分或任何受支持的操作系统上的最新服务,则现在不需要它们。

至于选择MSXML 3或6的版本,这部分取决于你想要做什么;MSXML 3和MSXML 6之间的主要区别在于MSXML 6有一个分析器支持对架构或架构集进行验证,而MSXML 3只支持基于DTD的验证。默认情况下,MSXML 6 还具有一些需要注意的更严格的安全相关设置,请参阅 http://msdn.microsoft.com/en-us/library/ms754611%28v=vs.85%29。

正如您的帖子还提到了XSLT,MSXML 3和6都支持XSLT和XPath 1.0,因此在标准合规性方面,您可以选择其中任何一个,在性能方面,您可能会发现MSXML 6的性能更好。