我一次又一次听到有关如何避免使用 XSLT for-each 的说法。应该消除的是你内心的命令式编程恶魔。
这有什么不好呢?
此最佳实践是否重要取决于sizeXML 的数量(即 100 个节点与 10,000 个节点)?
之间的本质区别<xsl:apply-templates>
and <xsl:-for-each>
没有人指出:
- <xsl:apply-templates>确实不仅仅是一个更好、更优雅的等价物<xsl:for-each>:
xsl:apply-templates
比xsl:for-each
, 甚至
仅仅是因为我们不知道什么代码将应用在节点上
选择——在一般情况下,此代码将有所不同
节点列表的不同节点.
Also, 将应用的代码
可以在编写 xsl:apply 模板之后编写,并通过
不认识原作者的人.
_2.另一方面,using <xsl:for-each>如果一个人确切地知道如何<xsl:for-each>
已处理.
问题在于,许多具有命令式编程经验的 XSLT 新手都采用<xsl:for-each>
作为他们最喜欢的 PL 中“循环”的替代品,并认为它可以让他们执行不可能的任务——例如增加计数器或对已定义的任何其他修改<xsl:variable>
.
一个不可缺少的用途<xsl:for-each>
就是改变当前的文档——这是经常需要的为了能够在不同于当前源 XML 文档的文档上使用 key() 函数,例如有效地访问驻留在其自己的 xml 文档中的查找表。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)