为什么二月,二月,在javascript中显示它有31天?

时间:2017-12-20 18:04:18

标签: javascript jquery html html5 date

Javascript报道2月有31天。下面的代码显示第二个月有更多的天数。发生了什么事?

    var currentDate = new Date(2018, 2, 4);

    function getDaysInMonth(month, year) {
      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 dayArr = getDaysInMonth(currentDate.getMonth(), currentDate.getFullYear());
    alert('month: '+currentDate.getMonth()+' year: '+currentDate.getFullYear()+' days: '+dayArr.length);

1 个答案:

答案 0 :(得分:0)

那是因为月份是0索引,因此JS中的第2个月是3月。试试吧,

var currentDate = new Date(2018,1,4);

那将输出28天。