js中this關鍵字的指向問題

2021-07-07 07:35:50 字數 462 閱讀 6701

全域性函式中

非嚴格模式下,this指向window物件,而嚴格模式下則為undefined
物件方法中
此時this指向該物件
建構函式中
此時this指向例項物件
以前都是按2中的方法去強行記憶的,知道看到這樣一句話——「this始終說明當前方法屬於誰」,頓覺豁然開朗。

全域性函式

全域性函式本身是全域性物件window的方法,故此時this指向於window
物件方法
此時指向該方法的父物件
建構函式
這裡可能有點費解,但是我們可以把new關鍵字的操作順序分解成如下步驟:

a.建立新物件;

c.將建構函式的prototype屬性新增到新物件的__proto__屬性中

如此一來,感覺脈絡一下子清晰了~

JS中this關鍵字的指向

js中感覺this的指向是多變的。這裡進行一下總結 個人感覺this的指向大致分為以下幾類 1 作為普通函式的呼叫。例如 var x 1 function test test 這裡列印1 一般這種情況我個人為了加深理解都會做一步變形。把所有的函式呼叫加上字首比如test 就是window.test ...

js中的this關鍵字

普通函式 window functionfn fn window 事件函式 指向事件源 var btn document.queryselector button btn.onclick function 定時器 中也是window setinterval function 1000 預保留this...

JS中的this關鍵字

js中的this代表的是當前行為執行的主體 js中的context代表的是當前行為執行的環境 區域 this是誰和函式在哪定義的和在哪執行的都沒有任何的關係,這和它的執行主體有關。function fn var obj fn window obj.fn obj function sum sum wi...