您的位置:

JavaScript获取当前月份的方法

一、通过Date对象获取当前月份

JavaScript中Date对象提供了获取当前年月日等日期信息的方法,其中获取当前月份的方法为getMonth()。该方法返回的值为0~11,需要将其加1才是真正的月份。

    
let now = new Date();
let month = now.getMonth() + 1;
console.log(month); // 输出当前月份
    

在上述代码中,我们通过new Date()创建了一个Date对象,然后调用getMonth()方法获取当前月份,最后加1得到真正的月份。

二、使用toLocaleString()获取当前月份

toLocaleString()是Date对象提供的一个方法,用于将日期时间转换为字符串。该方法的第一个参数是表示地区(locale)的字符串,可以将返回的字符串转换为当前地区的标准格式。如果只需要返回当前月份,可以指定该方法的第二个参数为{month: 'numeric'}。

    
let now = new Date();
let month = now.toLocaleString('zh', {month: 'numeric'});
console.log(month); // 输出当前月份
    

在上述代码中,我们将toLocaleString()方法的第一个参数设置为'zh',表示使用中文地区的标准格式。第二个参数设置为{month: 'numeric'},表示只返回月份部分的数字。

三、通过正则表达式获取当前月份

如果不想使用Date对象提供的方法获取当前月份,也可以使用正则表达式从Date对象转换后的字符串中提取月份。通过toString()方法可以将Date对象转换为字符串,然后使用正则表达式匹配月份部分。

    
let now = new Date();
let monthStr = now.toString().match(/ [a-zA-Z]{3} /);
let month = new Date(Date.parse(monthStr));
console.log(month.getMonth() + 1); // 输出当前月份
    

在上述代码中,我们通过toString()方法将Date对象转换为字符串,然后使用正则表达式匹配三个字母的英文月份部分。匹配到的结果是一个字符串,需要将其通过Date.parse()方法转换为Date对象。最后使用getMonth()方法获取月份,加1得到真正的月份。

四、结合moment.js库获取当前月份

moment.js是一个用于解析、操作和显示日期时间的JavaScript库,可以方便地获取当前日期时间以及进行格式化和计算等操作。可以通过该库提供的month()方法获取当前月份。

    
let month = moment().month() + 1;
console.log(month); // 输出当前月份
    

在上述代码中,我们直接调用moment()函数获取当前日期时间的moment对象,然后调用该对象的month()方法获取当前月份,加1得到真正的月份。