大家先放下手上的活,又有新需求來了。
我們網(wǎng)站首頁的那個(gè)大的計(jì)數(shù)器,就是統(tǒng)計(jì)用戶軟件下載量的那個(gè)。
產(chǎn)品經(jīng)理看了下,覺得得加點(diǎn)特效,讓它看起來更用戶友好。
他已經(jīng)拿出了一個(gè)方案,就是當(dāng)數(shù)字停在確切的值之前,得有個(gè)循環(huán)滾動效果。
類似于這樣:
任務(wù)如下:
創(chuàng)建一個(gè)函數(shù),根據(jù)計(jì)數(shù)值字符串,創(chuàng)建二維數(shù)組返回。
例如:
counterEffect("1250") // [[0,1],[0,1,2],[0,1,2,3,4,5],[0]] counterEffect("0050") // [[0],[0],[0,1,2,3,4,5],[0]] counterEffect("0000") // [[0],[0],[0],[0]]
比方說,"1250",它的第一個(gè)字符1,和二維數(shù)組的[0,1]對應(yīng),第二個(gè)字符2,和[0,1,2]對應(yīng)。
也就是從0到當(dāng)前字符的過程,每一個(gè)中間數(shù)都要錄入數(shù)組中。
思路:
很簡單,從左至右遍歷字符串,根據(jù)當(dāng)前的字符,生成第二維的數(shù)組,push進(jìn)第一維的數(shù)組即可。
function counterEffect(hitCount) { var result = []; for(var i=0;i<hitCount.length;i++){ var chr = hitCount.charAt(i); var num = chr - 0; var temp = []; for(var j=0;j<=num;j++){ temp.push(j); } result.push(temp); } return result; }
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com