【前端面試題】箭頭函式中this指向問題
阿新 • • 發佈:2020-09-20
一、技術部落格、視訊
技術部落格:ES6中箭頭函式VS普通函式的this指向
視訊:
1.箭頭函式和this的指向問題(coderwhy老師)
2.箭頭函式和this指向問題(尚矽谷老師)
二、例項
// 1.this是靜態的,this始終指向函式宣告時所在作用域下的this的值 // 如函式是在全域性下定義的,則this指向window function getName() { console.log(this.name); } let getName2 = () => { console.log(this.name); } // 設定window物件的name屬性 window.name = "我是全域性" const others = { name: "我是物件" } // 直接呼叫 getName();//輸出“我是全域性” getName2();//輸出“我是全域性” // call方法呼叫,call方法可以改變函式內部的值 getName.call(others)//輸出“我是物件” getName2.call(others)//輸出“我是全域性”, //箭頭函式的this是靜態的,無論怎麼改變值,this始終指向宣告函式時的this值,如函式是在全域性下定義的,則this指向window