(1).做爲對象方法調用。this 被天然綁定到該對象。app
(2).做爲函數調用。函數也能夠直接被調用,此時 this 綁定到全局對象。對於內部函數,這種綁定到全局對象的方式會產生另一個問題,內部函數的 this 應該綁定到其外層函數對應的對象上,那麼用就變量替代的方法,將this保存在一個變量中,該變量通常被命名爲 that。函數
(3).做爲構造函數調用。this 綁定到新建立的對象上。this
(4).使用 apply 或 call 調用。This能夠替換對象。spa