Comment définir des variables globales dans CoffeeScript ?
Votre code CoffeeScript se compile en JavaScript sans instructions var, en les insérant automatiquement pour toutes les variables à empêcher les fuites vers l’espace de noms global. Pour définir intentionnellement des variables globales, vous devez les attribuer comme propriétés de l'objet global.
'Attachez-les en tant que propriétés sur la fenêtre' dans le navigateur
L'objet global du navigateur est la fenêtre. Pour définir une variable globale, utilisez :
window.foo = 'baz';
Node.js
Node.js n'a pas d'objet window. Au lieu de cela, un objet exports est transmis au wrapper qui entoure le module. Pour Node.js, utilisez :
exports.foo = 'baz';
Cibler à la fois CommonJS et le navigateur
La documentation CoffeeScript suggère le code suivant pour cibler à la fois CommonJS et le navigateur :
root = exports ? this
Ceci vérifie si les exportations sont définies (Node.js) et l'attribue à root si c'est vrai, sinon attribuer l'objet global (fenêtre) du navigateur.
Dans Node.js, vous pouvez attribuer directement à l'objet exports, qui est renvoyé par la fonction require. Cependant, dans CoffeeScript, utilisez ce qui suit pour définir une fonction globale :
root = exports ? this root.foo = -> 'Hello World'
Cela attribue la fonction foo à l'espace de noms global, que vous soyez dans le navigateur ou que vous utilisiez Node.js.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!