Hallo,
Ich habe eine Abfolge von Funktionen, die hintereinander aufgerufen werden (a.k.a. "Programm" 😎). Dieses Programm wird unter bestimmten Voraussetzungen reinitialisiert und erneut durchlaufen, daher müssen alle Variablen, die sich im global Namespace befinden, zurückgesetzt werden (quasi auf
undefined
).
warum "undefined"?
Ich halte es für völlig ausreichend, vor einem Anweisungsblock alle Variablen, die darin verwendet werden, auf den jeweils gewünschten Wert zu setzen. Im Fall der Modularisierung durch Funktionen kann man das Prinzip noch weiter ins Detail treiben: Beim Funktionsaufruf genau die Werte (Ausdrücke) übergeben, die man tatsächlich haben möchte.
Wenn man prophylaktisch alle beteiligten Variablen auf Defaultwerte setzt (z.B. undefined), ist das IMO eher ein Zeichen für schlechen Programmierstil.
Live long and pros healthy,
Martin
Versuchungen sollte man nachgeben. Wer weiß, ob sie wiederkommen.