使用Moment.js查找当前一周中特定日期的日期

有很多方法可以在javascript中操纵日期。我一直在寻找最简单,最简单的方法,而又不需要冗长的丑陋代码,因此有人向我展示了Moment.js

我想使用当前日期来通过该库发现当前一周中特定日期的日期。到目前为止,我的尝试涉及获取当前天数(第0-6天)之间的差,并检查它与星期一(第1天)之间有多少天,这根本不对。

Here's my fiddle.

这是我的代码:

var now = moment();

var day = now.day();

var week = [['sunday',0],['monday',1],['tuesday',2],['wednesday',3],['thursday',4],['friday',5],['saturday',6]];

var monday = moment().day(-(week[1][1] - day));//today minus the difference between monday and today

$("#console").text(monday);

//I need to know the date of the current week's monday
//I need to know the date of the current week's friday

我怎样才能做到这一点?我的方法可能是完成此操作的糟糕方法,或者可能有点接近。但是,我确实希望解决方案简洁,小巧,动态且简单,因为所有代码都应该如此。

我不希望使用 native JS日期功能,这种功能在我所见过的每种情况下都会产生难看,困惑的代码。

最佳答案

本周的周日

moment().startOf('week')

这星期的星期一
moment().startOf('isoweek')

这周的星期六
moment().endOf('week')

当日与星期日之间的差额
moment().diff(moment().startOf('week'),'days')

本周的星期三
moment().startOf('week').add('days', 3)

09-10 11:39
查看更多