做為乙個後端開發人員,前端雖然沒有那麼專業,但js肯定是不能不會的。而js中的this關鍵字又很有意思。
其實我們沒法確定的說this就一定指向誰。在不同的情況下會有不同的指向。
1.首先在全域性作用域或者普通函式中this指向全域性物件window。
//直接列印
console.log(this); //window
//function宣告函式
function test()
test(); //window
//function宣告函式賦給變數
var test= function()
test(); //window
2.作為方法來呼叫時,誰呼叫該方法就指向誰。
//物件方法呼叫
var obj =
}obj.test(); //obj
//事件繫結
var btn = document.getelementbyid("button");
btn.onclick = function ()
//jquery的ajax
$.ajax(
});
3.在建構函式或者建構函式原型物件中this指向建構函式的例項
//使用new例項化物件
function test (name)
var obj = new test('yoyo');
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的最終指向的是那個呼叫它的物件 這句話有些問題,後面會解釋為什麼會有問題,雖然網上大部分的文章都是這樣說的,雖然在很多情況下那樣去理解不會出什麼問題,但是實際上那樣理解是不準確的...