首先須要明白:app
學習this 的第一步是明白this 既不指向函數自身也不指向函數的詞法做用域,你也許被這樣的解釋誤導過,但其實它們都是錯誤的。函數
而後知道:學習
當一個函數被調用時,會建立一個活動記錄(有時候也稱爲執行上下文)。這個記錄會包含函數在哪裏被調用(調用棧)、函數的調用方法、傳入的參數等信息。this 就是記錄的其中一個屬性,會在函數執行的過程當中用到。this
this 其實是在函數被調用時發生的綁定,它指向什麼徹底取決於函數在哪裏被調用。-----隱式this;作用域
call(..) 和apply(..) -------------------------------------------------------------------------顯式this;方法