this,event,obj的區(qū)別?
this 指當(dāng)前對(duì)象,但是有個(gè)小疑問(wèn),this只能作用于當(dāng)前部分?一旦嵌套以后不能連續(xù)用一個(gè)this而不重新定義?
event我查的是與鍵盤(pán)和鼠標(biāo)事件有關(guān)?不知道對(duì)不對(duì)?而且有時(shí)候用event有時(shí)候用e,是規(guī)定的還是隨意的?
obj完全不知道.....
this 指當(dāng)前對(duì)象,但是有個(gè)小疑問(wèn),this只能作用于當(dāng)前部分?一旦嵌套以后不能連續(xù)用一個(gè)this而不重新定義?
event我查的是與鍵盤(pán)和鼠標(biāo)事件有關(guān)?不知道對(duì)不對(duì)?而且有時(shí)候用event有時(shí)候用e,是規(guī)定的還是隨意的?
obj完全不知道.....
2015-08-12
舉報(bào)
2015-12-28
這三個(gè)的區(qū)別挺大的。首先需要了解的是,javascript其實(shí)是一種面向?qū)ο蟮恼Z(yǔ)言。對(duì)象是一種抽象的概念,你可以把對(duì)象理解成一個(gè)東西。它有各種屬性,也有各種方法(一般就是函數(shù))。英語(yǔ)里面管對(duì)象叫做object, 簡(jiǎn)寫(xiě)就是obj.
在面向?qū)ο蟮恼Z(yǔ)言中,有各種各樣的對(duì)象。比如我們可以規(guī)定一個(gè)對(duì)象。
objA = {
????name: 'Alice',
????gender: 'female',
????age: 40,
? ?function isOld() {?
????????if(this.age>30){return true;}
????????else return false;
????}?
}
那么在這個(gè)叫做objA的對(duì)象里,它有3個(gè)屬性和一個(gè)方法,其實(shí)大意就是說(shuō),objA的名字叫愛(ài)麗絲,是個(gè)女的,年齡40,這個(gè)對(duì)象還能判斷自己老不老。我們引用對(duì)象的屬性和方法的時(shí)候,直接能用'.'. 比如 objA.name, objA.isOld().?
this是怎么回事呢,就是說(shuō),你在對(duì)象本身的方法中引用對(duì)象本身的屬性的時(shí)候,你就可以用this來(lái)代替這個(gè)對(duì)象,就像objA.isOld里面有this.age這個(gè)用法,這里this.age就是說(shuō)的objA.name。但是由于是在對(duì)象內(nèi)部,所以可以用this。所以使用this的時(shí)候,它具體代表什么,那要看你是在哪個(gè)對(duì)象當(dāng)中使用的了。至于說(shuō),如果你是嵌套的對(duì)象,而且父對(duì)象和子對(duì)象當(dāng)中又相同的變量,我認(rèn)為(我沒(méi)試驗(yàn)過(guò)),子對(duì)象中的this代表子對(duì)象,而不能代替父對(duì)象。
而event這個(gè)東西,它其實(shí)只是針對(duì)事件才有的。當(dāng)瀏覽器有事件觸發(fā)時(shí),就會(huì)產(chǎn)生event這個(gè)對(duì)象,而這個(gè)對(duì)象可以通過(guò)事件處理函數(shù)當(dāng)中的參數(shù)獲得,比如, obj.oncllick = function(e) { }. 這里是javascript的一種機(jī)制,無(wú)論你這個(gè)處理函數(shù)當(dāng)中的參數(shù)寫(xiě)成什么,它都會(huì)把event對(duì)象傳遞給那個(gè)參數(shù),所以只要處理函數(shù)中的那個(gè)參數(shù)是合法的變量名,寫(xiě)成什么都可以,不過(guò)為了可讀性,人們多數(shù)寫(xiě)成event或者e。
2015-10-20
當(dāng)代碼的執(zhí)行環(huán)境發(fā)生了變化,this的指向就會(huì)發(fā)生改變;
事件:用戶或者瀏覽器自身·執(zhí)行的某個(gè)動(dòng)作;
事件對(duì)象:在觸發(fā)DOM上的某個(gè)事件時(shí),就會(huì)產(chǎn)生一個(gè)事件對(duì)象event;
事件處理程序可以用一個(gè)變量(符合變量的命名規(guī)則就行)接收這個(gè)對(duì)象,進(jìn)而做出其他操作。
你說(shuō)的obj是指什么?