日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > jscript > ExtJs與JavaScript的call方法

ExtJs與JavaScript的call方法

來源:程序員人生   發布時間:2014-01-22 06:35:32 閱讀次數:3030次

之前在教學視頻有看過javascript的call。這個方法在ExtJs中是很常用的。
以前在搞ExtJs的時候總是忽略initComponent里面的一句代碼,如下所示。今天在看其他人代碼的時候發現調用的函數和自己想像的不一樣。所以認真看了一下代碼,再結合之前js關于call的筆記。知道了其中的原因

Son.superclass.initComponent.call(this);
這里的call就是調用"Son"父類的initComponent函數,并把this傳進去,這個this是Son的實例對象。

下面用一個js代碼解釋一下這個call 是怎樣的

function Dog(name){
this.name = name;
}
function test(){
alert(this.name);
}
var dog = new Dog('lil');
test.call(dog);//這句話相當于dog.test();所以test()里面的this是dog,即this.name是dog.name,即彈出'lil'
如上面代碼所示,test.call(dog)等價于dog.test();

下面舉ExtJs代碼的例子

Son = Ext.extend(Father,{
initComponent : function() {      Son.superclass.initComponent.call(this);//這里調用父類的initComponent方法,即Father的initComponent方法,并把this,Son的實例對象做為參數傳過去 },

test : function() {
alert('test in Son');
    }
}

Father = Ext.extend(Ext.Panel,{
initComponent : function() {       Father.superclass.initComponent.call(this);
  this.test();//這里的this是Son的實例對象,相當于Son son = new Son();son.test();
  //所以調用的是子類的test方法而不是父類的test方法,我之前以為是調用父類的test方法
},
test : function() {
alert('test in Father');
}
}

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美精品在线观看 | 欧美日韩在线观看中文字幕 | 91一级| 国产精品美女久久久久av超清 | 成人免费网站在线观看 | 欧美精品一区二区三区视频 | 成人午夜精品一区二区三区 | 中文字幕亚洲视频 | 久热国产精品视频一区二区三区 | 成人免费视频在线观看 | 又爽又大又黄a级毛片在线视频 | 国产一区二区精品久久 | 91久久久国产精品 | 国产成人免费片在线观看 | 久久这里有精品 | 粉嫩蜜桃麻豆免费大片 | 久久久久久九九 | 日产精品久久久一区二区 | 日韩在线观看视频免费 | 国产小视频网站 | 天堂在线看 | 成人在线观看视频网站 | 日韩国产精品一区 | 最新亚洲 | 日本在线视频一区二区 | 欧美精品在线一区二区 | 亚洲国产欧美在线 | 亚洲一区久久 | 久久久99国产精品免费 | 亚洲精品aⅴ中文字幕乱码 九九九久久 | 操综合 | 欧美亚洲国产一区二区三区 | 欧美性妇 | 国产一区二区三区不卡在线观看 | 国产乱国产乱300精品 | 999久久精品| 国产黄a | 国产精品久久久久久久久久久不卡 | 久热久| 日韩av一级| 一区二区三区色 |