「これ」を使用します。 Javascript オブジェクト変数内
JavaScript では、C とは異なり、変数の前に明示的に「this」を付ける必要があります。それらが属するオブジェクトを参照します。これは、2 つの言語間のオブジェクト指向プログラミングにおける重要な違いです。
JavaScript の "this" キーワードは、関数が呼び出されるオブジェクトである現在のコンテキストを表します。 "this." を付けずに変数を宣言すると、その関数スコープ内のローカル変数になります。関数内からオブジェクトのプロパティにアクセスするには、「this」を使用する必要があります。
次のコードを考えてみましょう:
function foo() { bar = 0; // This creates a local variable this.getBar = function() { return bar; } // This creates a privileged method }
このコードでは、「bar」は「foo」関数内のローカル変数であり、「getBar」はローカル変数にアクセスできる特権メソッド。 「this.」を使用しないと、「getBar」は「bar」にアクセスできません。
「this.」を使用するこのアプローチ。オブジェクト メソッド内からアクセスするすべての変数に必要です。ただし、JavaScript を使用すると、インスタンス オブジェクトの代わりにプロトタイプ オブジェクトにメソッドを定義できます。プロトタイプで定義されたメソッドは、そのオブジェクトのすべてのインスタンスに継承されます。この場合、「this」の使用を避けることができます。それらのメソッドについては。以下に例を示します:
function Foo() { this.bar = 0; } Foo.prototype.getBar = function() { return this.bar; }
このコードでは、「getBar」がプロトタイプで定義されているため、「Foo」のインスタンスはこのメソッドを継承し、接頭辞「this」なしで「bar」にアクセスできます。
要するに「これ」を使うということです。インスタンス オブジェクト内で定義された関数/メソッド内からオブジェクト プロパティにアクセスするために不可欠です。ただし、代わりにプロトタイプでメソッドを定義することで回避できます。
以上が「this」をいつ使用する必要があるのか、なぜ使用する必要があるのか。 JavaScript オブジェクト変数で?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。