歡迎您光臨本站 註冊首頁

懂this關鍵字,你懂JS五分之一

admin @ 2015-06-06 reply:0
←手機掃碼閱讀

this永遠指向調用該方法(函數)的那個對象.(必背)
首先要知道this是什麼?
this就是js中的一個對象。是一個對象,不是一個函數,此是的對象你可以看作是一個對象的引用,引用誰?引用調用方法的那個對象.
this這個對象存在哪裡?存在JS代碼中,一般存在於函數之中。如果你把this放到<script>標籤中,你可以試下window==this,列印什麼?為什麼?
剖析this關鍵字
 代碼如下:

function ready(){
alert(this==window);
}
ready();

此時打什麼?true,為什麼?
代碼如下:

function Person(){
this.name='張三';
alert(this==window);
}
new Person();

此時列印什麼?false,為什麼?
把代碼加長點.加一個var perso=
var person = new Person();
全世界的人都知道person引用了new Person產生的那個對象。new Person創建的是一個JS實例對象,我們就可以綁定屬性和方法.
看下面這段代碼
代碼如下:

fn=function(){
}
fn.ready=function(){
alert(this== fn);
}

當調用fn.ready()的時候列印什麼?true ,為什麼?
十分奇怪,this現在等於一個函數了..為什麼?

[admin via ] 懂this關鍵字,你懂JS五分之一已經有1031次圍觀

http://coctec.com/room/show-2.html