moment.js获取当月、当周、当天、n天前、n天后的时间

根据 moment.js 获取开始结束时间段

moment().startOf(String)  //  开始时间
moment().endOf(String)  //  结束时间

根据 moment.js 计算时间

moment().add(Number, String);  //  加法
moment().subtract(Number, String);  //  减法

String - 通过将其设置为一个时间单位的开始来改变原始时刻:
传入 key 与 Shorthand 获取到的效果是相同的。


String
// 获取当天的开始结束时间
function getCurrentDays() {
  const startDate = moment().startOf("days").format("YYYY-MM-DD");
  const endDate = moment().endOf("days").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取当周的开始结束时间,周日至周一
function getCurrentWeekdays() {
  const startDate = moment().startOf("weeks").format("YYYY-MM-DD");
  const endDate = moment().endOf("weeks").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取当月的开始结束时间
function getCurrentMonth() {
  const startDate = moment().startOf("month").format("YYYY-MM-DD");
  const endDate = moment().endOf("month").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取上周的开始结束时间
function getLastWeekdays() {
  const startDate = moment().week(moment().week() - 1).startOf("weeks").format("YYYY-MM-DD");
  const endDate = moment().week(moment().week() - 1).endOf("weeks").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取上月的开始结束时间
function getLastMonth() {
  const startDate = moment().month(moment().month() - 1).startOf("month").format("YYYY-MM-DD");
  const endDate = moment().month(moment().month() - 1).endOf("month").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取下周的开始结束时间
function getNextWeekdays() {
  const startDate = moment().week(moment().week() + 1).startOf("weeks").format("YYYY-MM-DD");
  const endDate = moment().week(moment().week() + 1).endOf("weeks").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取下月的开始结束时间
function getNextMonth() {
  const startDate = moment().month(moment().month() + 1).startOf("month").format("YYYY-MM-DD");
  const endDate = moment().month(moment().month() + 1).endOf("month").format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取n天前的开始结束时间
function getBefore3days() {
  // 减法 moment.subtract(number, String)
  const startDate = moment().subtract(3, 'days').format("YYYY-MM-DD");
  const endDate = moment().subtract(3, 'days').format("YYYY-MM-DD");
  return [startDate, endDate];
}

// 获取n天后的开始结束时间
function getAfter3days() {
  // 减法 moment.add(number, String)
  const startDate = moment().add(3, 'days').format("YYYY-MM-DD");
  const endDate = moment().add(3, 'days').format("YYYY-MM-DD");
  return [startDate, endDate];
}

你可能感兴趣的:(moment.js获取当月、当周、当天、n天前、n天后的时间)