Hallo,
Man kann natürlich so coden, solange es irgendeinen Vorteil bietet. Bei dem obigen Beispiel sehe ich den Nachteil, dass es zu kryptisch ist und man schneller andere Fehler macht.
Das ist doch gerade die Absicht, dass es kryptisch aussieht, damit man nicht in Versuchung kommt, nachträglich nochmal darin rumzupfuschen. Solche extremen Zeilen gibt's bei mir nur in schwierigen Programmteilen, die ich möglichst nicht mehr verändern will. Wenn das Programm in der weiteren Entwicklung mal nicht tut, was es soll, dann liegt's sicher nicht an diesen Zeilen, denn die sind bis zum Abwinken getestet und für gut befunden.
Das sehe ich als Vorteil.
Bei deinem unteren Beispiel fehlt ein einfaches Semikolon. [...]
Das ist interessant. Dachte, ein Semikolon braucht man nur, um eine Anweisung abzuschließen. Ein Ausdruck wie a||b
ist aber doch keine Anweisung. Werde das Semikolon aber trotzdem setzen. Performance-Gewinn ist immer gut. :-)
Da vor dem csn kein var steht, durchsucht der Interpreter erst die ganze Scopechain [...]
Neinnein, globale Variablen gibt's bei mir nicht. Das Beispiel ist ja nur ein Codeschnipsel. csn wurde vorher schon lokal deklariert. Ansonsten schreibe ich natürlich immer das var
dazu.
Der eizige Fall, wo ich eine globale Variable brauche, ist bei Benutzung von setTimeout
. Habe bis jetzt keinen Weg gefunden, mit setTimeout
etwas zu starten, was nicht irgendie global verfügbar ist...
Danke und Gruß, Don P