2011-08-29 88 views
1

我試圖讓一個數組包含hour:minutes只使用一個循環。所以在最後我能得到一些接近:[0:00, 0:01... 23:58, 23:59]我知道我能做到這一點使用兩個for循環,例如:時間數組只有一個循環

for (var i=0;i<24;i++) { 
    for (var j=0;j<60;j++) { 
     // push i and j accordingly 
    } 
} 
+4

爲什麼不使用兩個循環?我不認爲會有任何提速。 – Shef

+0

很好,謝謝eveybody! – miked12

+0

@shef,我無法解釋它,但http://jsperf.com/two-loops顯示在google chrome 13上的性能提升至少爲 – Joe

回答

1

這裏是我去:

var times = []; 
for (var i=0;i<60*24;i++) { 
    times.push(((i/60)|0) + ':' + i%60); 
} 
console.log(times) 

(i/60)|0是做一個笨方法現在我正在看它的Math.floor

+0

+1。這將會很好。 – Shef

+0

出於好奇,你有沒有跑過用戶IAbstract? –

+0

@邁克爾,不,我沒有。現在我覺得不那麼有創意:( – Joe

相關問題