JavaScript中的this學習筆記
阿新 • • 發佈:2018-12-29
《JavaScript中this關鍵字詳解》
this指向函式執行時的當前物件,而與宣告環境無關
var someone = {
name: "Bob",
showName: function(){
alert(this.name);
}
};
var other = {
name: "Tom",
showName: someone.showName
}
other.showName(); //Tom
解析:呼叫show函式時,沒有明確的當前物件
解析:雖然不是在window中,而是在Tom物件中,但是沒有明確的當前物件,所以this指向windowvar name = "window"; varBob = { name: "Bob", showName: function(){ alert(this.name); } }; varTom = { name: "Tom", showName: function(){ var fun = Bob.showName; fun(); } }; Tom.showName(); //window
《深入淺出JavaScript中的this》
函式的呼叫可以有幾種方式
- 作為物件方法呼叫,this指向這個物件
- 作為函式呼叫,this指向全域性物件
function say(){
console.log(this);
};
say(); // 雖然簡單,但這就是作為函式呼叫,也就是上面說的沒有明確物件