Coffeescript.orgで:
bawbag = (x, y) ->
z = (x * y)
bawbag(5, 10)
コンパイルすると:
var bawbag;
bawbag = function(x, y) {
var z;
return (z = (x * y));
};
bawbag(5, 10);
node.jsでcoffee-scriptを介してコンパイルすると、次のようにラップされます。
(function() {
var bawbag;
bawbag = function(x, y) {
var z;
return (z = (x * y));
};
bawbag(5, 10);
}).call(this);
ドキュメントは言う:
他のスクリプトで使用するトップレベルの変数を作成する場合は、ウィンドウまたはCommonJSのエクスポートオブジェクトのプロパティとしてそれらをアタッチします。CommonJSとブラウザーの両方を対象としている場合、存在演算子(以下で説明)を使用すると、それらを追加する場所を見つける信頼できる方法が得られます。root = exports?この
次に、CoffeeScriptでグローバル変数を定義する方法を教えてください。「ウィンドウのプロパティとして添付する」とはどういう意味ですか?
window
オブジェクトやオブジェクトなどの既存のグローバル状態オブジェクトに保存できexports
ます。グローバル変数を作成する必要はありません。
window
(またはglobal
nodejsの)オブジェクトのプロパティとして保存されます