Szukam sprawdzonego rozwiązania stałego do uzyskania bieżącego tygodnia w roku dla określonej daty. Wszystko, co mogę znaleźć, to te, które nie biorą pod uwagę lat przestępnych lub po prostu źle. Czy ktoś ma tego typu rzeczy?JavaScript Date.getWeek()?
Lub jeszcze lepiej funkcja, która mówi, ile miesięcy zajmuje miesiąc. Zwykle wynosi 5, ale może wynosić 4 (feb) lub 6 (1. jest niedziela i miesiąc ma 30-31 dni)
=========== AKTUALIZACJA:
Nadal nie jestem pewien, czy dostaniesz numer tygodnia, ale ponieważ odkryłem, że nie rozwiąże on mojego problemu z wyliczeniem, ile tygodni zajmuje miesiąc, porzuciłem go.
Oto funkcja, aby dowiedzieć się, jak wiele tygodni dokładnie miesiąc zajmują w kalendarzu:
getWeeksNum: function(year, month) {
var daysNum = 32 - new Date(year, month, 32).getDate(),
fDayO = new Date(year, month, 1).getDay(),
fDay = fDayO ? (fDayO - 1) : 6,
weeksNum = Math.ceil((daysNum + fDay)/7);
return weeksNum;
}
Należy naprawdę napisać to samemu. To dość trywialne zadanie. Jestem pewien, że Google ma wiele odpowiedzi na temat tego, jak zdobyć lata przestępne. – Trevor
Mogłem, ale wolę nie wymyślać koła, szczególnie dobrze przetestowane koło. – Max
Moment.js to świetna biblioteka daty/czasu JS. Sprawdź dokumentację - http://momentjs.com/docs/ - ma opcję tygodnia w roku. Musisz zweryfikować, w jaki sposób obsługuje rok przestępny. Moje dotychczasowe doświadczenia z biblioteką były świetne. – ryanlahue