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

新手上路,请多包涵

我怎么能从时刻 JS 获得过去日期的周数,只能从选定日期的时刻格式化对象中获取?

原文由 Arthur Kovacs 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答
  $(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);
});

例子

原文由 Giovani 发布,翻译遵循 CC BY-SA 3.0 许可协议

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

更多信息: https ://momentjs.com/docs/#week-year-week-and-weekday-tokens

原文由 l2aelba 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题