Как я могу получить недельное число месяца с помощью JavaScript / jQuery?
Для напр.:
Первая Неделя: 5-го июля 2010. / Недельное Число = Первый понедельник
На предыдущей неделе: 12-го июля 2010. / Недельное Число = Второй понедельник
Текущая дата: 19-го июля 2010. / Недельное Число = Третий понедельник
На следующей неделе: 26-го июля 2010. / Недельное Число = В прошлый понедельник
function weekAndDay (date) {var days = ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'], префиксы = ['Первый', 'Второй', 'Третий', 'Четвертый', 'Пятый']; возвращаемые префиксы [Math.floor (date.getDate () / 7)] + '' + days [date.getDay ()]; } console.log (weekAndDay (новая дата (2010,7-1, 5))); // => «Первый понедельник» console.log (weekAndDay (новая дата (2010,7-1,12))); // => «Второй понедельник» console.log (weekAndDay (new Date (2010,7-1,19))); // => «Третий понедельник» console.log (weekAndDay (new Date (2010,7-1,26))); // => «Четвертый понедельник» console.log (weekAndDay (new Date ()));
Добавление возможности иметь Last ...
может потребовать дополнительных взломов ...
Это не поддерживается нативно.
Вы можете создать свою собственную функцию для этого, работающую с первого дня месяца
var currentDate = new Date();
var firstDayOfMonth = new Date( currentDate.getFullYear(), currentDate.getMonth(), 1 );
И затем получить день недели этой даты:
var firstWeekday = firstDayOfMonth.getDay();
... что даст вам индекс на основе нуля, от 0-6, где 0 - воскресенье.