您的位置:

JavaScript获取上个月第一天和最后一天

一、JavaScript获取当月第一天和最后一天

  function getMonthDays(year, month) {
    var date = new Date(year, month, 1);
    var days = [];
    while (date.getMonth() === month) {
      days.push(new Date(date));
      date.setDate(date.getDate() + 1);
    }
    return days;
  }
  var today = new Date();
  var year = today.getFullYear();
  var month = today.getMonth(); //get the current month
  var currentMonthDays = getMonthDays(year, month);
  var firstDay = currentMonthDays[0];
  var lastDay = currentMonthDays[currentMonthDays.length - 1];

该代码主要通过new Date()构造函数来获取当前时间所处的年份和月份,同时利用循环方法获取当月的所有日期,最后通过数组的方式取得当月的第一天和最后一天。

二、JavaScript获取当年第一天和最后一天

  var today = new Date();
  var year = today.getFullYear();
  var firstDay = new Date(year, 0, 1);
  var lastDay = new Date(year, 11, 31);

该代码主要通过new Date()构造函数来获取当前时间所处的年份,从而获取当年的第一天和最后一天。其中,new Date(year, 0, 1)函数中,其中的month参数为0代表一月份,而new Date(year, 11, 31)中的month参数为11代表十二月份。

三、JavaScript获取某月的第一天和最后一天

  function getMonthDays(year, month) {
    var date = new Date(year, month, 1);
    var days = [];
    while (date.getMonth() === month) {
      days.push(new Date(date));
      date.setDate(date.getDate() + 1);
    }
    return days;
  }
  var year = 2022;
  var month = 5; //代表六月份
  var currentMonthDays = getMonthDays(year, month);
  var firstDay = currentMonthDays[0];
  var lastDay = currentMonthDays[currentMonthDays.length - 1];

该代码主要通过new Date(year, month, 1)构造函数来获取指定月份的第一天,而通过循环方法获取指定月份的所有日期,最后取得指定月份的第一天和最后一天。

四、JavaScript获取本周第一天和最后一天

  function getWeekDays() {
    var date = new Date();
    var dayOfWeek = date.getDay();
    var numDaysToAdd = 0;
    if (dayOfWeek === 0) {
      numDaysToAdd = 6;
    } else if (dayOfWeek !== 1) {
      numDaysToAdd = dayOfWeek - 1;
    }
    var monday = new Date(date.setDate(date.getDate() - numDaysToAdd));
    var sunday = new Date(monday.setDate(monday.getDate() + 6));
    return [monday, sunday];
  }
  var thisWeekDays = getWeekDays();
  var firstDay = thisWeekDays[0];
  var lastDay = thisWeekDays[1];

该代码主要通过getWeekDays函数来获取本周的第一天和最后一天,其中利用getDay()函数获取当天的星期数,从而计算出本周第一天的日期。通过numDaysToAdd变量来计算出需要加上的天数,并利用new Date()构造函数来构造出本周的第一天和最后一天。

五、JavaScript获取本月第一天和最后一天

  function getMonthDays(year, month) {
    var date = new Date(year, month, 1);
    var days = [];
    while (date.getMonth() === month) {
      days.push(new Date(date));
      date.setDate(date.getDate() + 1);
    }
    return days;
  }
  var today = new Date();
  var year = today.getFullYear();
  var month = today.getMonth(); //get the current month
  var currentMonthDays = getMonthDays(year, month);
  var firstDay = currentMonthDays[0];
  var lastDay = currentMonthDays[currentMonthDays.length - 1];

该代码主要是获取当月的第一天和最后一天,与“JavaScript获取当月第一天和最后一天”相似。由于当月的第一天和最后一天也就是本月的第一天和最后一天,因此,可以通过该代码来实现本月第一天和最后一天的获取。

六、JavaScript获取当前月的第一天和最后一天

  function getMonthDays(year, month) {
    var date = new Date(year, month, 1);
    var days = [];
    while (date.getMonth() === month) {
      days.push(new Date(date));
      date.setDate(date.getDate() + 1);
    }
    return days;
  }
  var today = new Date();
  var year = today.getFullYear();
  var month = today.getMonth() - 1; //get the previous month
  var currentMonthDays = getMonthDays(year, month);
  var firstDay = currentMonthDays[0];
  var lastDay = currentMonthDays[currentMonthDays.length - 1];

该代码主要是获取上个月的第一天和最后一天。与“JavaScript获取当月第一天和最后一天”相似,只要将获取当月的month参数减1,就可以获取到上个月的第一天和最后一天。