Подтвердить что ты не робот

Moment.js получает номер недели, основанный на определенном дне (также в прошлые годы)

Как я могу получить с момента JS номер недели с даты в прошлом только с момента форматированного объекта из выбранного дня?

4b9b3361

Ответ 1

  $(document).ready(function(){
    var weeknumber = moment("12-25-1995", "MM-DD-YYYY").week();
    console.log(weeknumber);
  });

В соответствии с actionsjs docs:

Поскольку разные локали определяют неделю недели нумерации, Moment.js добавил момент # недели, чтобы получить/установить локализованную неделю года.

Неделя года меняется в зависимости от того, какой день является первым днем неделю (воскресенье, понедельник и т.д.), а какая неделя - первая неделя год.

Например, в Соединенных Штатах воскресенье - это первый день неделю. Неделя с 1 января в нем - первая неделя года.

Итак, если у вас возникают проблемы с получением нужного числа, используйте .isoWeek()

$(document).ready(function(){
  var weeknumber = moment("11-26-2016", "MMDDYYYY").isoWeek();
  alert(weeknumber);
});

Пример

Ответ 2

Вы также можете использовать format()

<сильные > Примеры:

moment().format('w') // as .week() like '1'
moment().format('W') // as .isoWeek() like '1'
moment().format('ww') // as .week() (2 digits) like '01'
moment().format('WW') // as .isoWeek() (2 digits) like '01'

ISO Дата недели: https://en.wikipedia.org/wiki/ISO_week_date

Дополнительная информация: https://momentjs.com/docs/#week-year-week-and-weekday-tokens