組件
組件開發(fā):多個對象之間代碼復(fù)用的一種形式,對象之間類似于兄弟關(guān)系
存在問題
1.參數(shù)順序問題
分析:一個參數(shù)不會存在順序問題,可以用json解決。
function show(opt){
}
show({
id:'div1',
toDown:function(){},
toUp:function(){}
});
2.實(shí)例之間參數(shù)個數(shù)不同的問題
解決方法:通過設(shè)置默認(rèn)參數(shù)和配置參數(shù)解決。如果配置參數(shù)存在,就用配置參數(shù)覆蓋默認(rèn)參數(shù),否則使用默認(rèn)參數(shù)。
注意:應(yīng)確保配置參數(shù)和默認(rèn)參數(shù)的鍵名相同。
var a={
name:'默認(rèn)',
F:function(){
alert('default');
}
};
var b={
name:'配置',
F:function(){
alert('setting');
}
};
extend(a,b);
function extend(obj1,obj2){//obj1是默認(rèn)參數(shù),obj2是配置參數(shù)
for(var attr in obj2){//如果配置參數(shù)存在,就用配置參數(shù)覆蓋默認(rèn)參數(shù),否則使用默認(rèn)參數(shù)
obj1[attr]=obj2[attr];
}
}