取得 TextNode 物件的集合
雖然 getElementsByTagName() 可以有效檢索元素對象,但對於 textNode 物件無效,因為它們不是元素。因此,問題出現了:是否有替代方法來取得文件中的所有 textNode 物件?
替代方法
雖然遍歷 DOM 是一個可行的選擇,但缺乏瀏覽器本機方法似乎很奇怪。為了解決這個問題,出現了幾種方法:
性能比較
已經進行了1000多次運行來比較這些方法的效能測試。雖然 getElementsByTagName 是最快的,但它選擇特定的元素標籤,可能無法捕獲所有文字節點。
有趣的是,TreeWalker 的效能與 getElementsByTagName 幾乎相同,可以說在速度上與更複雜的 DOM 遍歷方法相當。 。這凸顯了 TreeWalker 檢索文字節點的效率。
以上是如何有效率地取得文件中所有TextNode物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!