javascript - 获取当前周

标签 javascript momentjs

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

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

getweek.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);
}

结果

{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"}

预期结果

{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"}

谢谢。

最佳答案

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

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

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();
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.1/moment.min.js"></script>

关于javascript - 获取当前周,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47214442/

相关文章:

javascript - 在 Vue.js 中将事件绑定(bind)到窗口

javascript - 如何将一个div拖到另一个div的位置?

javascript - 这种使用 moment.js 解析 ASP.NET 日期的尝试是库的错误还是我的代码的错误?

javascript - 如何在javascript中合并连续的日期?

javascript - 显示为 :none not behaving in IE8 的嵌套 HTML 元素

javascript - 在 Knockout.js 中复制数组

javascript - 如何在 JavaScript 中确定日期是否为周末

angular - 如何在运行时更改 Angular Material Datepicker 格式

javascript - 在 moment.js 中将 DD-MM-YYYY 格式转换为 MM-DD-YYYY

ios - ios 和 mongodb 的时间戳选择,moment.js