js中的this指向誰?
誰呼叫了函式,this就指向誰!
舉例:通過函式名()直接呼叫,指向window
function
func()
func()
;//window
通過物件.函式名()呼叫,指向物件
function
func()
//自己定義的物件
var obj=
;obj.
func()
;//obj
//dom物件
document.
getelementbyid
('divnode').
onclick
=function()
箭頭函式的this只取決於外層(函式或全域性)的作用域 和前面的有所不同
function
test1()
}let a=2;
let obj=
;let runtest=obj.test;
runtest()
;//2 普通函式 誰呼叫this就指向誰
function
test2()
}let a=2;
let obj=
;let runtest=obj.test;
runtest()
;//3 箭頭函式 只取決於外層作用域
vue的生命週期鉤子方法(create,mount,update,destroy)裡面的this都指向呼叫它的vue例項
methods和data方法中的this也指向vue例項
settimeout中的this是指向window的!!!在vue**中使用這個方法時要注意但是使用箭頭函式了 又會改變this指向
methods:
,1000);
settimeout
(function()
,1000);
}}
js中this的指向
lang en charset utf 8 深入理解thistitle head 它代表函式執行時,自動生成的乙個內部物件,只能在函式內部使用。隨著函式使用場合的不同,this的值會發生變化。但是有乙個總的原則,那就是this指的是,呼叫函式的那個物件。demo1 function demo1 呼叫...
js中this的指向
this的指向在函式定義的時候是確定不了的,只有函式執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個呼叫它的物件 functiona a 按照我們上面說的this最終指向的是呼叫它的物件,這裡的函式a實際是被window物件所點出來的,下面的 就可以證明。var o o.fn ...
js中的this指向
首先必須要說的是,this的指向在函式定義的時候是確定不了的,只有函式執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個呼叫它的物件 這句話有些問題,後面會解釋為什麼會有問題,雖然網上大部分的文章都是這樣說的,雖然在很多情況下那樣去理解不會出什麼問題,但是實際上那樣理解是不準確的...