當前位置:成語大全網 - 書法字典 - Javascript字典復制

Javascript字典復制

功能?TestMaxCount(s)?{

var?小心翼翼。=?新的?array();

var?cnAry?=?新的?array();

var?我,?idx,?ch?continueCh?=?"",?繼續嗎?=?1;

var?麥克斯。=?"",?maxCn?=?0;

為了什麽?(我?=?0;?我?& lt?s .長度;?i++)?{

ch?=?s . slice(I,我?+?1);

如果?(ch?!=?continueCh)?{?//?這個角色與前壹個不同。

如果?(continueCh?!=?"")?{?//?如果前壹個字符不是空字符串,?更新重復數組的最大重復次數的值。

idx?=?GetIndex(chAry,?continue ch);

如果?(idx?==?-1)?{

chary . push(continueCh);

cnary . push(continue cn);

}

不然呢?{

如果?(continueCn?& gt?cnAry【idx】)?{//?如果新的連續重復次數大於原始次數,則進行更新

cnAry【idx】?=?continueCn

}

}

}

如果?(continueCn?& gt?maxCn)?{

maxCn?=?continueCn

麥克斯。=?continueCh

}

繼續嗎?=?1;?//?重復次數為1。

continueCh?=?ch;//?重復的字符被設置為當前獲取的字符。

}

不然呢?{

continue cn++;

}

}

如果?(continueCh?!=?"")?{

idx?=?GetIndex(chAry,?continue ch);

如果?(idx?==?-1)?{

chary . push(continueCh);

cnary . push(continue cn);

}

不然呢?{

如果?(continueCn?& gt?cnAry【idx】)?{//?如果新的連續重復次數大於原始次數,則進行更新

cnAry【idx】?=?continueCn

}

}

如果?(continueCn?& gt?maxCn)?{

maxCn?=?continueCn

麥克斯。=?continueCh

}

}

//?返回的數據chAry是壹個字符數組。CnAry是連續字符的最大數量。MaxCh是重復次數最多的角色。maxCn的最大重復次數

回歸?{?chAry:?小心點。cnAry:?cnAry?maxCh:?馬克西?maxCn:?maxCn?};

}

功能?GetIndex(ary,?ch)?{//?獲取數組中元素的索引。

var?我;

為了什麽?(我?=?0;?我?& lt?ary.length?i++)?{

如果?(ary【I】?==?ch)?{

回歸?我;

}

}

回歸?-1;

}

var?數據?=?TestMaxCount(“12121111212222121265438“);

window . alert(data . maxch?+?":?"?+?data . maxcn);當然,您應該能夠使用正則表達式來使代碼更加緊湊。