In CoffeeScript bedeutet das Fehlen einer dedizierten var-Anweisung, dass alle Variablen implizit als lokal deklariert werden. Dies verhindert versehentliche Lecks in den globalen Namespace während der Kompilierung in JavaScript.
Um globale Variablen zu definieren, müssen Sie sie dem globalen Objekt als Eigenschaften zuweisen.
Im Browser ist das globale Objekt das Fensterobjekt. Um eine globale Variable mit dem Namen foo zu erstellen, würden Sie schreiben:
window.foo = 'baz'
In Node.js ist das globale Objekt nicht als Fenster verfügbar . Stattdessen sollten Sie dem Exportobjekt globale Variablen zuweisen:
exports.foo = 'baz'
In der CoffeeScript-Dokumentation wird empfohlen, die Stammvariable zu verwenden, um das entsprechende globale Objekt basierend auf Exports zu bestimmen definiert ist (was in Node.js der Fall ist) oder nicht (was eine Browserumgebung impliziert):
root = exports ? this root.foo = 'baz'
Dieser ternäre Ausdruck weist root zu auf Exporte, wenn Exporte definiert sind, andernfalls auf diesen (den globalen Kontext in Node.js oder das Fenster im Browser).
root = exports ? this root.foo = -> 'Hello World'
Dieser Code deklariert eine globale Funktion namens foo entweder im globalen Objekt Node.js (über Exporte) oder im Browser (über Fenster).
Das obige ist der detaillierte Inhalt vonWie definiert man globale Variablen in CoffeeScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!