dpes8693 / frontend-mentor-program-1rd

前端培訓
0 stars 1 forks source link

鍾宛余_HW4&Question #38

Closed Jc22124 closed 2 months ago

Jc22124 commented 2 months ago

1.我已完成表單填寫! 2.Q:我好奇在什麼情況下,會選擇不使用箭頭函數?

dpes8693 commented 2 months ago

1.我已完成表單填寫! 2.Q:我好奇在什麼情況下,會選擇不使用箭頭函數?

回答這個會需要先理解 js 的 this 目前最需要知道的是以下狀況

const obj1 = {
  name: 'Alice',
  getName(){
    return this?.name; // this指向obj1
  }
};
console.log( obj.getName() );// 'Alice'
const obj2 = {
  name: 'Alice',
  getName: () => {
    return this?.name; // this指向全局或外部上下文
  }
};
console.log( obj2.getName() ); // 拿到空 ''

結論: 如果宣告一個物件,要在自己的方法取得自己物件的屬性,則不能使用箭頭函數