2017-12-04 4 views
0

for/inループで次の 'times'オブジェクトを2回繰り返すにはどうすればよいですか?for/in関数でオブジェクトプロパティのループを2回繰り返す方法

var times = [] 
, periods = ['am', 'pm'] 
, hours = [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] 
, prop = null 
, hour = null; 

for (prop in periods) { 
for (hour in hours) { 
    times.push(('' + hours[hour]) + ':' + '00' + periods[prop]); 
} 

} // object properties from 12:00am to 11:00pm 

ので、私は出力されたい[午前12:00 ....午後11:00(初回ループ)...午前12:00 ...午後11時(2回目のループ]。任意のアイデア?他の2つのループの周りにこのループを追加し、それが動作するかどうかを確認

+0

を(VAR I = 0のために別のループ、 'で包み、 i <2;私は++) '? – nnnnnn

答えて

-2

それは繰り返し回数の二重のある変数を作る動作しない場合* 2機能を使用してみてください。

感謝。

(2)の

{

}

+0

*「* 2機能を使用してください」* - 「* 2」機能とは何ですか?また、 'for(2)'は構文エラーです。 – nnnnnn

+0

ようこそ!あなたの答えが明確であることを確認し、可能であれば実証デモコードを添付してください。質問を掲示しているユーザーにあなたが示唆していることを回答から伝えるのは少し難しいです。乾杯! –

0

それらを二つの配列を構築し、concatenate

var times1 = [] 
, times2 = [] 
, times = [] 
, periods = ['am', 'pm'] 
, hours = [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] 
, prop = null 
, hour = null; 

for (prop in periods) { 
for (hour in hours) { 
    times1.push(('' + hours[hour]) + ':' + '00' + periods[prop]); 
    times2.push(('' + hours[hour]) + ':' + '00' + periods[prop]); 
} 

} // object properties from 12:00am to 11:00pm 

times = times1.concat(times2); 
関連する問題