教辨別this指向問題 包括箭頭函式

2021-10-10 20:54:25 字數 563 閱讀 9529

functiona(

)a()

//window 誰呼叫就指向誰

物件中

var obj =);

console.

log(

this);

//obj},

};obj.

aaa(

);

建構函式中

functiona(

)}var a =

newa()

a.aaa()

// this指向a例項物件 因為是a呼叫的

箭頭函式沒有this 他會向上一層的作用域找this

ar obj =)}

);console.

log(

this);

//obj},

};obj.

aaa(

);

所以如果想找箭頭函式的this 就相當於在找上一層作用域的this 如果上一層還是箭頭函式 那麼它會再往上直到找到為止

箭頭函式this指向問題

前言 線下筆試碰到的題目,發現學習掌握的不透徹,所以回來填坑 const obj1 const obj2 console.log obj1.func.bind obj2 輸出結果為 剛開始很疑惑結果,於是做了個對比 const obj1 const obj2 console.log obj1.fun...

箭頭函式 this指向問題

1.為什麼要用箭頭函式 2.箭頭函式分析this指向 1.this指向呼叫函式的物件 function a a 2.this指向window var a 2 這裡不能換成let a 2 因為window.獲取不到a的值 var obj obj.b 總結 1.箭頭函式在定義的時候生效 而普通函式則在呼...

箭頭函式this指向問題

箭頭函式表示式的語法比函式表示式更簡潔,並且沒有自己的this arguments super new.target。箭頭函式表示式更適用於那些本來需要匿名函式的地方,並且它不能用作建構函式。箭頭函式的this指向的是箭頭函式所在作用域的this指向 向來看一下這個物件,我在外部定義了乙個全域性變數...