web-dev-qa-db-ja.com

Moment.jsは、特定の日(過去数年)に基づいて週番号を取得します

選択された日のモーメント形式のオブジェクトからのみ、過去の日付の週番号を瞬間JSから取得するにはどうすればよいですか?

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

Momentjsのドキュメントによると:

ロケールによって年の週の番号付けが異なるため、Moment.jsはmoment#weekを追加して、ローカライズされた年の週を取得/設定します。

年の週は、週の最初の日(日曜日、月曜日など)、および週の最初の週によって決まります。

たとえば、米国では、日曜日が週の最初の日です。 1月1日が含まれる週は、その年の最初の週です。

そのため、適切な週番号を取得できない場合は、.isoWeek()を使用してください

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

69
Giovani

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-year-and-weekday-tokens

9
l2aelba