原創(chuàng)聲明:本文為作者原創(chuàng),未經(jīng)允許不得轉(zhuǎn)載,經(jīng)授權(quán)轉(zhuǎn)載需注明作者和出處
本來(lái)是打算放在自己的canvas庫(kù)里用來(lái)實(shí)現(xiàn)圖形對(duì)象化的注冊(cè)機(jī)制,不過(guò)因?yàn)闃?gòu)架紊亂,有打算后期重構(gòu),所以單獨(dú)把注冊(cè)模塊提了出來(lái),后面準(zhǔn)備用es6來(lái)重寫一遍
var obj=['l']; //用于注冊(cè)存儲(chǔ)(對(duì)象存儲(chǔ)池)
function getObj(o){ //接收對(duì)象
var o=o;
var id=o.id;
if(unique(id)){ //查重
obj.push(o);} //更新對(duì)象存儲(chǔ)池
else{ } //不做處理
}
function unique(id){
var id=id;
var wait=[]; //零食數(shù)組
wait.push(id); //更新數(shù)組
for(var i=0;i<obj.length;i++){ //遍歷儲(chǔ)存組
var i=i;
if(wait[0] !==obj[i]){ //如果沒(méi)有一樣的
if(i==obj.length-1){return true;} //判定查詢完成
}else{
return false;
}
}
wait.shift(); //刪除零食數(shù)組的值
}; //用于查重
function gotId(id){
var name=id; // 驗(yàn)證id來(lái)獲取對(duì)象
for(var i=0;i<obj.length;i++){
var i=i;
if(obj[i].id==name){
return obj[i];
}else{}//console.log('do not have id')
}
}
雖然感覺(jué)沒(méi)啥邏輯難度,但還是發(fā)一下,如果有需要就可以直接拿取用,畢竟只是原版,后面會(huì)完善這個(gè)注冊(cè)機(jī)制