js中this什么意思?求詳細解釋下
js中this什么意思
哈尼露易絲
2016-05-11 12:46:16
TA貢獻5條經驗 獲得超2個贊
this對象是在運行時基于函數的執行環境綁定的。
1,在全局函數中,this等于window(瀏覽器)。
2,一般函數中,this等于window(瀏覽器)。
3,作為對象方法中的函數時,this指向這個對象?
var?O?=?{prop:37}; function?independent(){? ????return?this?prop;? } O.f?=?independent?;? console.log(O.f());?//37??這里this會指向這個對象O
4,用構造器建立新實例的時候,this 會指向這個新的實例。
5,call() ?apply() ?bind() 都可以改變this。具體用法可以參考call方法
TA貢獻4條經驗 獲得超9個贊
函數有4種調用方式
1方法調用
函數作為某個對象的屬性,我們稱之為該屬性的方法,此時this指向該屬性
2函數調用
函數直接調用,在瀏覽器此時this指向window
3構造器調用
通過new創建一個原函數的實例,此時this指向這個新的函數
4call apply調用
改變this的指向為傳入的第一個參數,如果傳入的第一個參數為null,此時在瀏覽器this仍指向window
舉報