ホームページ > ウェブフロントエンド > jsチュートリアル > 「this」キーワードは Node.js モジュールおよび関数でどのように動作しますか?

「this」キーワードは Node.js モジュールおよび関数でどのように動作しますか?

Linda Hamilton
リリース: 2024-12-06 06:03:10
オリジナル
789 人が閲覧しました

How Does the `this` Keyword Behave in Node.js Modules and Functions?

Node.js モジュールと関数における "this" の意味

Node.js では、"this" の値は、

モジュールのスコープvs. 関数スコープ

  • モジュール スコープ: Node.js モジュール (require() によってロードされる) 内では、「this」は module.exports を参照します。デフォルトでは空のオブジェクト。
  • 関数スコープ: 関数内、 "this" はグローバル オブジェクトを指します (厳密モードを除く)。

関数呼び出し

  • 関数内の "this" の値
  • 関数を直接呼び出すと (例: aFunction())、非厳密モードでグローバル オブジェクトに "this" を設定します。
  • メソッドとして関数を呼び出すと (obj.aFunction() など)、"this" がオブジェクト インスタンスに設定されます。
  • Using関数を呼び出すためのbind()、call()、またはapply()では、「this」値を指定できます。

挿入されたグローバル オブジェクト

  • Node.js は、関数スコープの "this" にグローバル オブジェクトを挿入します。
  • これは、関数は通常、特定のオブジェクト コンテキストなしで呼び出されるからです。
  • ただし、 (Node.js によって作成された) モジュール ラッピング関数が明示的に「this」を module.exports.
に割り当てるため、「this」はモジュール スコープに挿入されません。

以上が「this」キーワードは Node.js モジュールおよび関数でどのように動作しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート