VUE3 課前章節-JS 必備觀念-This的運作


注意:this 的指向相當複雜,大部分情境只需要了解其中一種即可(95%)
傳統函式中的 this 只與調用方式有關

以下調用方法為simple call 因此會找到全域
就是在調用的前面沒有其他物件

var someone = '全域';
function callSomeone() {
  console.log(this.someone);
}
callSomeone();

在調用的時候前面的物件是什麼,他This的指向就會是什麼!!!
因此下面是找到obj裡面的someone

var obj = {
  someone: '物件',
  callSomeone() {
    console.log(this.someone);
  }
}
obj.callSomeone();

而同樣如果遇到內外層的部分
也是看調用時前面物件是外層或是內層This就會指到哪裡

var wrapObj = {
  someone: '外層物件',
  callSomeone,
  innerObj: {
    someone: '內層物件',
    callSomeone,
  }
}
wrapObj.callSomeone(); //會找到外層
wrapObj.innerObj.callSomeone(); //會找到內層
#Vue #js







你可能感興趣的文章

 [Leetcode in Java] 572. Subtree of Another Tree

[Leetcode in Java] 572. Subtree of Another Tree

PHP會員管理系統 - 新增 & 修改 & 刪除

PHP會員管理系統 - 新增 & 修改 & 刪除

淺談 DOM Clobbering 的原理及應用

淺談 DOM Clobbering 的原理及應用






留言討論