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