@@dedlfix
Hier formulierst du die Sache deutlich angemessener als im ersten Posting, als du es als Fehler dargestellt hast.
Das ist es auch. Es ist eine falsche Vorgehensweise; es ist ein Fehler. Kein syntaktischer, aber ein methodischer.
Zu Falschem sage ich „falsch“, einen Fehler nenne ich einen Fehler. Da irgendwas schönzureden ist nicht mein Ding.
Eine Vorgehensweise, die zum selben Ergebnis kommt wie eine andere, kann nicht falsch sein.
Riesige Löcher in die Erde reißen, Braunkohle abbaggern, um sie im Kraftwerk zu verheizen, kann nicht falsch sein? Kommt ja zum selben Ergebnis wie Windräder und Photovoltaik: Strom in der Steckdose. Merkste selber, dass deine Argumentation falsch ist?
Unnütze Operationen auf dem DOM kosten sinnlos Ausführungszeit und Strom (Akku). Beides negative Auswirkungen für den Nutzer.
Fällt der Unterschied so deutlich aus?
Je nach Größe des DOMs.
Aber es geht nicht mal darum, wie groß der Unterschied ist, sondern Unnötiges prinzipiell zu vermeiden. Es wäre sinnlos, verschiedene Programmiertechniken zu meistern: eine gute für großes DOM und eine schludrige für kleines.
Und es geht wohlgemerkt auch nicht darum, durch Mikrooptimierung die Lesbarkeit des Codes zu verschlechtern. Das sollte man nicht tun.
Ist es wirklich so, dass der Browser die o.g. Strukturen direkt vorhält und nicht erst beim Zugreifen on-the-fly erzeugt?
Natürlich hält der Browser die Strukturen vor: das DOM. In dieser Struktur will ein Element aber erstmal gefunden werden.
Und muss für IDs ständig das DOM geparst werden, ohne dass er eine interne Liste pflegt?
Bei IDs hast du wohl einen Punkt. Darum ging’s hier aber nicht.
LLAP 🖖
„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann