首頁 > web前端 > js教程 > JavaScript的繼承的封裝介紹_基礎知識

JavaScript的繼承的封裝介紹_基礎知識

WBOY
發布: 2016-05-16 17:20:14
原創
988 人瀏覽過
複製程式碼 程式碼如下:

/**
* 當呼叫此函數時,只有第一次參數傳入,第二個不存在的情況下,就建立類別
* 當呼叫此函數時,傳入了兩個參數,第一個參數為基底類別,第二個參數則在基底類別的基礎上加入內容
*/
obfunction extendobjunction ,prop){
function F(){

}
//如果第一個參數為object類型(即json物件)的話,則將json的key value賦值給F函數的原型F.prototype.key = value
if (typeof(obj) == "object") {
for(var name in obj){
F.prototype[name] = obj[name];
}
} else {//如果第一個參數為function類型的話,則將次函數的原型賦值給F函數,prop肯定是傳值的(json物件),所以將prop賦值給F函數的原型
F.prototype = obj.prototype;
for(var name in prop){
F.prototype[name] = prop[name];
}
}
return F;
}
//因為這裡只有一個參數,所以此時會將json物件的key,value賦值給extend函數中的F函數的原型,然後用person變數接收F函數,此時person也成為了一個函數,此函數也擁有了F函數的原型name和sex
var person = extend({
name:"xxc",
sex:"man"
} );
//將person函數傳入,進入extend函數後,首先將person的原型賦值給F函數,然後將第二個參數hope:"more money"賦值給F函數,此時F函數的原型有三個東西name,sex,hope
//最後將F函數回傳,導致person的原型也和F函數一樣,有name,sex,hope
var person = extend(person,{
hope:"more money"
});
alert(person.prototype.name);//xxc
alert(person.prototype.sex);//man
alert(person.prototype .hope);//more money

複製程式碼 代碼如下:


function.html






相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板