Jsou dány dvě Date()
objektů, kde jeden je menší než druhý, jak mohu každý den přepínat mezi daty?
for(loopDate = startDate; loopDate < endDate; loopDate += 1) { }
Fungovala by taková smyčka? Ale jak mohu přidat jeden den do počítadla smyček?
Díky!
Odpověď
Zde je způsob, jak to udělat tak, že přidání jednoho dne způsobí, že se datum v případě potřeby přesune na další měsíc, a aniž byste se zabývali milisekundami. Problémem není ani letní čas.
var now = new Date(); var daysOfYear = []; for (var d = new Date(2012, 0, 1); d <= now; d.setDate(d.getDate() + 1)) { daysOfYear.push(new Date(d)); }
Upozorňujeme, že pokud chcete datum uložit, budete si muset vytvořit nové (jako výše s new Date(d)
), jinak skončíte tak, že každé uložené datum bude mít konečnou hodnotu d
ve smyčce.