ホームページ >ウェブフロントエンド >jsチュートリアル >CoffeeScript でグローバル変数を定義するにはどうすればよいですか?

CoffeeScript でグローバル変数を定義するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-28 14:02:11343ブラウズ

How do I define Global Variables in CoffeeScript?

CoffeeScript でグローバル変数を定義するにはどうすればよいですか?

CoffeeScript コードは var ステートメントなしで JavaScript にコンパイルされ、すべての変数に var ステートメントが自動的に挿入されます。グローバル名前空間への漏洩を防ぎます。グローバル変数を意図的に定義するには、それらをグローバル オブジェクトのプロパティとして割り当てる必要があります。

ブラウザで「ウィンドウのプロパティとして追加」

ブラウザのグローバル オブジェクト窓です。グローバル変数を定義するには、次を使用します。

window.foo = 'baz';

Node.js

Node.js にはウィンドウ オブジェクトがありません。代わりに、モジュールを囲むラッパーに渡されるエクスポート オブジェクトがあります。 Node.js の場合は、次を使用します。

exports.foo = 'baz';

CommonJS とブラウザの両方をターゲットにする

CoffeeScript ドキュメントでは、CommonJS とブラウザの両方をターゲットにする次のコードを提案しています。

root = exports ? this

これは、エクスポートが定義されているかどうかを確認し (Node.js)、割り当てますtrue の場合は root に割り当てられ、そうでない場合はブラウザーのグローバル オブジェクト (ウィンドウ) を割り当てます。

Node.js では、require 関数によって返されるエクスポート オブジェクトに直接割り当てることができます。ただし、CoffeeScript では、次のコードを使用してグローバル関数を定義します:

root = exports ? this
root.foo = ->
  'Hello World'

これにより、ブラウザーを使用しているか Node.js を使用しているかに関係なく、関数 foo がグローバル名前空間に割り当てられます。

以上がCoffeeScript でグローバル変数を定義するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。