Moment.JS - 从周数获取日期

时间:2017-03-17 14:51:40

标签: javascript angular typescript momentjs

我在moment.js的文档中没有看到这一点。也许我正在跳过它,但我希望将一年中的一周数转换为日期格式。

例如

week: number = 13 
year: number = 2017
date: date = // get date format for the first day of that week

我正在使用moment.js,但我无法在documentation中找到我想要的内容。这可能吗?我已经找到了普通javascript的一些答案,但由于我已经在使用moment.js,我认为可能有一种简单的方法可以做到这一点

4 个答案:

答案 0 :(得分:8)

是的,可能:

var date = moment('2017').add(13, 'weeks');

请注意,moment('2017')将于2017年1月1日返回。

答案 1 :(得分:3)

另一种方法是使用format string

var dateLocale = moment(week + " " + year, "ww gggg");
var dateISO = moment(week + " " + year, "WW GGGG");

答案 2 :(得分:2)

使用startOf(' isoweek')您将获得一周的第一天。

moment('2017').add(13, 'weeks').startOf('week').format('DD MM YYYY'); // "02 04 2017"m, gives you Sunday(last day of the week)

moment('2017').add(13, 'weeks').startOf('isoweek').format('DD MM YYYY');
"27 03 2017"// first day of the week ( gives you Monday)

答案 3 :(得分:1)

无需添加: moment().year(2017).week(13);