js中,this自動引用正在調用的當前方法 . 前的對象。簡而言之,this就是指向當前對象。舉例說明:app
1. obj.fun()中若是出現this.那麼,this就是指向obj函數
2. new Fun()中,new運算符會將this指向正在建立的新對象this
3. 匿名函數自調中,this直接指向window,不過嚴格模式下,this指undefinedprototype
4. 原型對象中,obj.prototype.fun中的this,值未來調用fun的.前的子對象對象
雖然這幾條規則很簡單,但很實用,也是我的在摸爬滾打中總結出來的。繼承
不過常常會遇到this並不是本身想要的狀況,能夠用call, apply, bind替換this原型
最爲常見的就是涉及到兩種對象間繼承的時候,若是一個構造函數中,想借用另外一個構造函數,不能直接用this調用,而要用call來替換原先的this 匿名函數