Moment.js根据特定日期(也是过去几年)获取周数

时间:2014-09-20 21:39:09

标签: javascript momentjs week-number

我怎样才能从过去的日期JS中获取过去的日期中的周数仅从选定日期的格式化对象开始?

3 个答案:

答案 0 :(得分:65)

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

根据momentjs docs:

  

因为不同的区域设置定义了不同年份的周数,   Moment.js添加了一周#周来获取/设置一年中的本地化周。

     

一年中的哪一周取决于哪一天是第一天   一周(周日,周一等),以及哪一周是第一周   这一年。

     

例如,在美国,星期天是第一天   周。 1月1日这一周是一年中的第一周。

因此,如果您在获取正确的周数时遇到问题,请使用.isoWeek()

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

Example

答案 1 :(得分:7)

您也可以使用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

答案 2 :(得分:0)

这与问题无关,但如果您想在星期一获得 1,在星期二获得 2,等等 moment().format("d")