获取当前周

Pri*_*riz 5 javascript momentjs

所以我使用momentjs来处理我的日期格式并获取当前周。

但我的问题是如何让它从星期一开始到星期日

获取周.js

function getCurrentWeek() {
  var currentDate = moment();

  var weekStart = currentDate.clone().startOf('week');
  var weekEnd = currentDate.clone().endOf('week');

  var days = [];

  for (var i = 0; i <= 6; i++) {
    days.push(moment(weekStart).add(i, 'days').format("MMMM Do,dddd"));
  }
  console.log($scope.weekDays = days);
}
Run Code Online (Sandbox Code Playgroud)

结果

{0:"November 5th,Sunday"
1:"November 6th,Monday"
2:"November 7th,Tuesday"
3:"November 8th,Wednesday"
4:"November 9th,Thursday"
5:"November 10th,Friday"
6:"November 11th,Saturday"}
Run Code Online (Sandbox Code Playgroud)

预期结果

{0:"November 6th,Monday"
1:"November 7th,Tuesday"
2:"November 8th,Wednesday"
3:"November 9th,Thursday"
4:"November 10th,Friday"
5:"November 11th,Saturday"
6:"November 12th,Sunday"}
Run Code Online (Sandbox Code Playgroud)

谢谢。

Cha*_*a G 12

您可以使用startOf('isoWeek')从星期一开始一周。

var weekStart = currentDate.clone().startOf('isoWeek');
Run Code Online (Sandbox Code Playgroud)

var weekStart = currentDate.clone().startOf('isoWeek');
Run Code Online (Sandbox Code Playgroud)
function getCurrentWeek() {
  var currentDate = moment();

  var weekStart = currentDate.clone().startOf('isoWeek');
  var weekEnd = currentDate.clone().endOf('isoWeek');

  var days = [];

  for (var i = 0; i <= 6; i++) {
    days.push(moment(weekStart).add(i, 'days').format("MMMM Do,dddd"));
  }
  console.log(days);
}

getCurrentWeek();
Run Code Online (Sandbox Code Playgroud)