0
假設你有下列XSL 1.0選擇 - 當有多個謂詞性能
<choose>
<when test="a = 'test' or b = 'test' or c = 'test'">
// do work
</when>
<when test="d = 'test' or e = 'test' or f = 'test">
// do work
</when>
</choose>
與
<choose>
<when test="a = 'test'">
// do work
</when>
<when test="b = 'test'">
// do work
</when>
<when test="c = 'test'">
// do work
</when>
etc...
</choose>
很顯然,我寧願謂詞的字符串對爆炸他們到自己單獨的時候元素更幹,但我不確定性能影響,因爲這個名單可能會增長到相當大的規模。請問XSL解析器創建一個內部的switch-case結構,基本上將其轉換爲:
case a:
case b:
case c:
//do work
break;
在這種情況下,在爆炸時元素會過早的優化?有沒有更好的XSL模式來處理這樣的問題?