Учитывая день недели ( var day ), код ниже будет печатать дату каждого
день в году, начиная с сегодняшнего дня. Так как 4 = четверг, я получу список
всех четвергов, оставшихся в году. Мне было просто любопытно, было ли
«аккуратнее» способ сделать это?
var day = 4;
var date = new Date();
var nextYear = date.getFullYear() + 1;
while(date.getDay() != day)
{
date.setDate(date.getDate() + 1)
}
while(date.getFullYear() < nextYear)
{
var yyyy = date.getFullYear();
var mm = (date.getMonth() + 1);
mm = (mm < 10) ? '0' + mm : mm;
var dd = date.getDate();
dd = (dd < 10) ? '0' + dd : dd;
console.log(yyyy + '-' + mm + '-' + dd)
date.setDate(date.getDate() + 7);
}
Выход:
2011-02-10
2011-02-17
2011-02-24
2011-03-03
2011-03-10
.. и т.д.