私は次のようなコードを持っています
self = @
その後、@someMethodName
またはを使用していますself.someMethodName
@
特別な意味はありますか?
私は次のようなコードを持っています
self = @
その後、@someMethodName
またはを使用していますself.someMethodName
@
特別な意味はありますか?
@
javascript識別子の有効な文字ではありません。識別子には、、、数字、文字のみを含めることができ$
ます_
。
Coffeescriptでは、@
を意味しthis
ます。
CoffeeScriptには、このキーワードに関連するいくつかの優れた機能があります。まず、CoffeeScriptはこれの省略形として@記号を使用します。たとえば、@fooはthis.fooと同等です。次に、関数のパラメーターで@記号を使用すると、CoffeeScriptはそれらの値をオブジェクトのプロパティとして自動的に割り当てます。
編集:jQueryに関する限り、jQueryは単なるjavascriptであるため、javascriptと同じ識別子ルールが適用されます。@
jQueryでの他の使用法については、この質問またはドキュメントを参照してください。
@
this
Coffeescriptのショートカットです
それで
self = @
のコーヒースクリプトです:
var self = this;
CoffeeScriptの設計から数年が経過し、CoffeeScriptで提案されたすべてがECMAスクリプトに組み込まれたわけではありません。のショートカットとして使用する代わりに、デコレータthis
に使用することを提案します。