Ohne Klammer kannst du die Funktion deklarieren wo du willst.
leider nicht!
die Funktion schon.
Warum? Offensichtlich doch nicht ganz am Anfang des scripts noch vor der Variablendeklaration, wie Du nachstehend schreibst.
Das muss vor der ersten Verwendung stehen, du solltest auf jeden Fall auch use strict verwenden!
strict habe ich absichtlich weggelassen, um diesen Effekt zu sehen.
Wenn du globale (bzw. in dem Falle globale lexikalische) Variabeln verwenden möchtest, ja.
Jetzt bringst Du mich ins Schleudern! Von globalen lexikalischen Variablen habe ich in den Unterlagen nichts gefunden.
Gruß
Thomas