D.R.: „with“ in JavaScript?

Beitrag lesen

Hallo,

Waas?! Wieso denn das? Warum? Was spricht gegen with?

Für JS-Anfänger zu mißverständlich/fehleranfällig.

Es ist aber IMHO übersichtlicher, als wenn man dauernd irgendwelche Variablen erstellt.

So ist:

var td = tr.appendChild(document.createElement("td"));  
td.className = "Klasse";  
td.id = "ID";

doch viel unübersichtlicher als:

with (appendChild(document.createElement("td"))){  
 className = "Klasse";  
 id = "ID";  
}

Mit „with“ kann man also praktisch ganze Baumstrukturen abbilden, während man bei Variablen noch nicht mal auf die Idee kommt, den Quellcode überhaupt einzurücken.

Na ja, bis das real aus den JS-Engines verschwindet, wird man wohl lange warten können ... >;->

Aber man möchte ja trotzdem lieber Zeitgemäß programmieren, um nicht vielleicht doch mal auf einen Browser zu stoßen, der das nicht kann…

Das einzige, was ich an „with“ komisch finde, ist, dass man trotzdem noch ohne Probleme alert() und andere Methoden des window-Objektes ausführen kann. Das hätte man IMHO etwas strikter gestalten können.

Theoretisch läuft ein Script defaultmäßig immer innerhalb des window-Objektes. Das ist ja eigentlich auch eine Form von „with“.

mfg. Daniel