Obtenir une collection d'objets TextNode
Bien que getElementsByTagName() récupère efficacement les objets élément, il est inefficace pour les objets textNode car ce ne sont pas des éléments. Par conséquent, la question se pose : existe-t-il une méthode alternative pour acquérir tous les objets textNode dans un document ?
Méthodes alternatives
Bien que parcourir le DOM soit une option viable, le l'absence d'une approche native du navigateur semble étrange. Pour remédier à cela, plusieurs méthodes ont vu le jour :
Comparaison des performances
Des tests de performances ont été effectués sur 1000 exécutions pour comparer ces méthodes. Bien que getElementsByTagName se démarque comme le plus rapide, il recourt à la sélection de balises d'éléments spécifiques et peut ne pas capturer tous les nœuds de texte.
Fait intéressant, TreeWalker fonctionne presque de la même manière que getElementsByTagName et est sans doute comparable en vitesse aux méthodes de traversée DOM plus élaborées. . Cela met en évidence l'efficacité de TreeWalker pour récupérer des nœuds de texte.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!