Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我很好奇 DOM 和 XPath 这两者的优缺点。XPath 提供了 DOM 没有提供的什么,反之亦然?我不是在寻找性能或类似的东西,在导航方面两者之间的主要区别是什么?例如,什么时候 DOM 比 XPath 更好用?
谢谢。
它们是互补的,而不是竞争的。DOM 提供了具有低级导航能力的 XML 树模型(获取第一个孩子、获取下一个兄弟等);XPath 添加了更高级别的搜索和导航功能(例如,获取所有书籍的平均价格,获取最后一章的标题)。
另请注意,DOM 只是 XML 的一种树模型,远非最好的:它是第一个也是最差的,遗憾的是还有这么多人仍在使用它。在 Java 世界中,有很多更好的设计可用,例如 JDOM 和 XOM。