javascript - コンテキストに関する質問、つまりこれが何を指しているのか?
某草草
某草草 2017-07-05 10:56:18
0
5
931

コードを直接アップロードします:

リーリー

これが上記のコードの異なるポイントを指している理由は何ですか?

もう完全に理解できました。いくつか答えてください。

某草草
某草草

全員に返信(5)
大家讲道理

関数借用関数とコンストラクター関数を捨てると、残るのは通常の関数とオブジェクトメソッドの2種類だけです。

オブジェクトメソッドはオブジェクトを指し、通常の関数はグローバルを指します

いいねを押す +0
曾经蜡笔没有小新

誰がこの関数を呼び出しても、thisは誰を指します。

this的指向只和你如何调用这个函数有关,比如你说第一个this指向test,这可不一定,有的是办法把这个this的指向改掉。只有当你运行test.outer()的时候,第一个this才会指向test のポインティングは、この関数の呼び出し方法にのみ関係します。たとえば、最初の

test を指す場合、これは必ずしも当てはまりません。 のポインティングを変更する方法はいくつかあります。 🎜。 test.outer() を実行する場合のみ、最初の 🎜 は test を指します。 🎜
いいねを押す +0
Ty80

/a/11...

いいねを押す +0
女神的闺蜜爱上我

これはクロージャの問題です。関数メソッドを含むオブジェクト リテラルを通じてオブジェクトに属性が割り当てられ、この関数メソッドにコンソール出力があり、この関数内で関数が宣言されると、通常の状況ではクロージャの問題が発生します。特別な状況では、この値を変更できます。携帯電話の不便さについての洞察が得られます。

いいねを押す +0
巴扎黑

実際、匿名で回答するのは間違いです!オブジェクト内の関数内で定義された関数は、上位レベルの環境変数を直接取得することはできません。ましてや、この方法で var that=this などの変数を定義する必要があります。このオブジェクトをレベル調整します
var test = {

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート