Всем доброго времени суток.
Просьба к гуру подсказать, как наиболее правильно и быстро вычислить дату последней пятницы месяца...
Просмотрел вариации на тему, но в основном ищут, как вычислить день недели по дате... в итоге, есть пара мыслей..
к примеру:
// текущая дата (в скобках произвольная дата для теста)
var d = new Date(2015, 0, 29);
// кол-во дней в след месяце
var dayCount = new Date(d.getFullYear(), d.getMonth() + 2, 0).getDate();
alert('кол-во дней в след месяце: ' +dayCount);
d.setDate( d.getDate()+dayCount );
d.setDate(0);
// for test
alert('последний день текущего месяца: '+ d + '\n'+'является днем недели: '+ d.getDay() +' или '+ ['вс','пн','вт','ср','чт','пт','сб'][d.getDay()] );
var daySearch = d.getDate();
if(d.getDay() < 5){
daySearch = d.getDate() - (7 + d.getDay() - 5);
alert(daySearch +' = '+ d.getDate() +' - (7 + '+ d.getDay() +' - 5);')
}else if(d.getDay() > 5){
daySearch = d.getDate() - (d.getDay() - 5);
alert(daySearch +' = '+ d.getDate() +' - ('+ d.getDay() +' - 5);')
};
alert('Число последней пятницы текущего месяца: '+daySearch);