📜  当前月份的天数 - Javascript (1)

📅  最后修改于: 2023-12-03 15:25:36.180000             🧑  作者: Mango

当前月份的天数 - JavaScript

在很多业务场景中,我们要获取当前月份的天数,JavaScript 提供了很多方法来实现这个功能。本文将介绍几种获取当前月份的天数的方法。

方法一:手动计算

获取当前月份的天数,可以使用手动计算的方式。首先我们要获取当前年份和月份,然后根据每个月的天数计算得出天数。JavaScript 中可以通过 Date() 对象的方法来获取当前日期,具体实现如下:

// 获取当前日期
const today = new Date();

// 获取当前年份和月份
const year = today.getFullYear();
const month = today.getMonth() + 1; // 月份是从 0 开始计数的,需要加 1

// 计算当前月份的天数
let days = 0;
switch(month) {
  // 31 天的月份
  case 1:
  case 3:
  case 5:
  case 7:
  case 8:
  case 10:
  case 12:
    days = 31;
    break;
  // 30 天的月份
  case 4:
  case 6:
  case 9:
  case 11:
    days = 30;
    break;
  // 闰年 2 月份
  case 2:
    if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
      days = 29;
    } else {
      days = 28;
    }
    break;
  default:
    break;
}

console.log(`当前月份的天数是 ${days} 天`);

以上代码方式可以计算出当前月份的天数,并输出到控制台。但是,这种方式比较麻烦,需要手动计算。

方法二:用 JavaScript 自带的函数计算

JavaScript 还提供了自带的函数来计算当前月份的天数,具体实现如下:

// 获取当前日期
const today = new Date();

// 计算当前月份的天数
const days = new Date(today.getFullYear(), today.getMonth() + 1, 0).getDate();

console.log(`当前月份的天数是 ${days} 天`);

以上代码使用了 new Date(year, month, day) 构造函数来计算当前月份的天数,并输出到控制台。其中的 day 参数为 0,会自动减 1,计算出当前月份的最后一天日期,然后再调用 getDate() 方法,获取天数。

方法三:使用 Moment.js 库

除了以上两种方式外,我们还可以使用 Moment.js 库来计算当前月份的天数。Moment.js 是一个 JavaScript 日期处理库,可以方便地处理日期和时间。

在使用 Moment.js 之前,需要先安装 Moment.js 库,具体安装命令如下:

npm install moment --save

然后在项目中引入 Moment.js 库,并使用如下代码来计算当前月份的天数:

// 引入 Moment.js 库
import moment from 'moment';

// 获取当前日期
const today = moment();

// 计算当前月份的天数
const days = today.daysInMonth();

console.log(`当前月份的天数是 ${days} 天`);

以上代码中,我们使用了 Moment.js 的 daysInMonth() 方法来计算当前月份的天数,并输出到控制台。

综上,本文介绍了三种获取当前月份的天数的方法:手动计算、JavaScript 自带的函数计算和使用 Moment.js 库。不同的业务场景可以选择不同的方法来实现。