如何动态获取一周的开始和结束日期

时间:2017-10-06 08:21:09

标签: angularjs ionic-framework

我正在使用离子框架。当用户选择随机日期时,有一种方法可以动态获取一周的开始和结束日期。

3 个答案:

答案 0 :(得分:1)

基于this answer我根据您的需求进行了配置。代码在vanilla js中,但您可以轻松地将其转换为角度代码,因为功能是相同的。

根据用户选择的日期查找一周的第一天和最后一天的功能:

function getFirstLastDayOfWeek(userDate) {

  let result = {};

  let curr = new Date(userDate); // get current date
  let first = curr.getDate() - curr.getDay(); // First day is the day of the month - the day of the week
  let last = first + 6; // last day is the first day + 6

  result = {
        firstDay:new Date(curr.setDate(first)).toUTCString(),
    lastDay:new Date(curr.setDate(last)).toUTCString()
  };

  return result;
};

这是一个working fiddle

答案 1 :(得分:0)

var days=new Date().getWeek();
console.log(days[0].toLocaleDateString() + ' to '+ days[1].toLocaleDateString())

动态日期

var days=new Date("10/01/2017").getWeek();
    console.log(days[0].toLocaleDateString() + ' to '+ days[1].toLocaleDateString())

答案 2 :(得分:0)

请提及您的离子版本。

使用moment.js可以轻松解决您的问题。

假设您有一个随机约会对象,并希望找到start of week

moment(<randomDate>).startOf('isoWeek');

一周结束

moment(<randomDate>).endOf('isoWeek');