多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

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

ExtJs與JavaScript的call方法

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

之前在教學視頻有看過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');
}
}

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产高清一区二区三区免费视频 | 午夜dj影院在线观看免费视频中文 | 黄色一区二区三区 | 久久天堂成人影院 | 国产老妇一性一交一乱 | 久久精品国产精品亚洲综合 | 中文字幕乱码无线码在线 | 欧美一级淫片免费观看 | 中国特黄特级真人毛片 | 免看一级a毛片一片成人不卡 | 2023av网站 | 国产一级毛片外aaaa | 一区二区三区精品国产欧美 | 亚洲精品伊人久久久久 | 精品影视网站入口 | 欧美日韩另类综合 | 黑人高h | 亚洲日本在线免费观看 | 久久精品免观看国产成人 | xxxxx在线视频 | 中文字幕一区二区三区有限公司 | japanese日本护士xx | 久久国产精品最新一区 | a久久久久一级毛片护士免费 | 国产99精品 | 亚洲国语| 欧美日韩国产精品自在自线 | 日本免费一区二区三区最新vr | 国产成人免费视频 | 欧美艳星性videose精品 | 久久国产精品一区二区 | 国产精品日产三级在线观看 | www视频在线观看天堂 | 综合爱爱| 国产成人久久精品一区二区三区 | 亚洲伊人久久大香线蕉啊 | 高清免费a级在线观看国产 高清免费国产在线观看 | 久久国产精品老人性 | 中文字幕av在线 | a天堂影院 | 大看蕉a在线观看 |