js 获取上个月的最后一天

421 阅读1分钟

入门级写法

通过枚举实现:

function getMonthLastDay(_a){
  var lastDay;
  var _year = _a.getFullYear();
  // 判断是否是闰年
  var isLeapYear = (_year % 4 === 0 && _year %100 !== 0 ) || (_year % 400 === 0);
  var _month = _a.getMonth();
  switch(_month){
    case 1,3,5,7,8,10,12: 
      lastDay = 31;
      break;
    case 2:
      lastDay = isLeapYear? 29 : 28;
      break;
    default: 
    lastDay = 30;
  }
  return lastDay;
}

var _date = new Date('2022 03 26');
console.log(getMonthLastDay(_date));//28

小技巧写法

通过new Date()实现

function getMonthLastDay(_a){
  var _year = _a.getFullYear();
  var _month = _a.getMonth();
  return new Date(_year, _month ,0).getDate();
}
var _date = new Date('2022 03 26');
console.log(getMonthLastDay(_date));//28