ホームページ >ウェブフロントエンド >jsチュートリアル >Node.js とブラウザーの両方の CoffeeScript でグローバル変数を管理するにはどうすればよいですか?
CoffeeScript には var ステートメントがないため、変数に自動的にそれが組み込まれ、グローバル名前空間への漏洩を防ぎます。この名前空間に意図的にアクセスするには、変数をグローバル オブジェクトのプロパティとして定義する必要があります。
ブラウザでウィンドウにアタッチ
ブラウザでは、グローバル オブジェクトは window です。 。したがって、プロパティを割り当てるには、次のような構文を使用できます。
window.foo = 'baz';
Node.js でのグローバル変数の管理
Node.js には専用の変数がありません。ウィンドウオブジェクト。代わりに、ラップされたモジュールに渡されるエクスポートがあります。したがって、Node.js の場合、割り当ては次のようになります:
exports.foo = 'baz';
CommonJS とブラウザの両方をターゲット
CoffeeScript ドキュメントでは、次の使用を推奨しています:
root = exports ? this
これは、エクスポートが定義されているかどうかを確認し (Node.js では true)、それを存在する場合は root 。それ以外の場合は、これを root に割り当てます (ブラウザでは true)。
関数の呼び出し
CoffeeScript では、次のように記述できます。
root.foo = -> 'Hello World'
これにより、環境に関係なく、グローバル名前空間で関数 foo が宣言されます。
以上がNode.js とブラウザーの両方の CoffeeScript でグローバル変数を管理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。