MomentJS 获取前一个星期五

MomentJS get the previous friday

我有一个用户输入的日期,我将其转换为片刻

var newDate = moment('01/02/2015');

我需要做的是获取相对于传入的任何日期的前一个星期五。我该如何完成此操作?

我想过这样做:

moment('01/02/2015').add('-1', 'week').day(5); 

但不知道它的可靠性如何。

newDate.day(-2);

就这么简单。 :)

day() 设置相对于它正在处理的 moment 对象的星期几。 moment().day(0) 总是回到一周的开始。 moment().day(-2)比一周初早两天,即上周五。

注意:即使 newDate 是周五或周六,这也会 return 到 前一周 的周五。要避免这种行为,请使用:

newDate.day(newDate.day() >= 5 ? 5 :-2);