JS获取当前月份的正确姿势,告别低效代码!

吉云

今天跟大家唠唠我用 JavaScript 获取当前月份的小实践,这玩意儿说难不难,说简单也不简单,主要是得理清楚思路。

事情是这样的,最近在做一个小项目,需要在页面上显示当前的月份,一开始觉得这还不简单?直接 `new Date()` 就完事儿,结果一上手,发现坑还不少。

我直接用 `new Date()` 拿到当前时间,想着这下总行?结果打印出来一长串,还得自己去截取。

JS获取当前月份的正确姿势,告别低效代码!

javascript

let now = new Date();

*(now); // 类似:Wed Oct 26 2023 15:30:00 GMT+0800 (中国标准时间)

然后我就想,肯定有方法可以直接获取月份的,一查,果然有!`getMonth()` 这玩意儿就是专门用来获取月份的。

javascript

JS获取当前月份的正确姿势,告别低效代码!

let month = *();

*(month); // 输出:9 (注意,这里是 9,代表 10 月)

但是!这里有个坑,`getMonth()` 返回的是从 0 开始的,也就是说 0 代表 1 月,1 代表 2 月,以此类推,11 代表 12 月。这跟我们平时用的月份习惯不一样,得加 1 才行。

最终的代码就变成这样:

javascript

JS获取当前月份的正确姿势,告别低效代码!

let now = new Date();

let month = *() + 1;

*(month); // 输出:10

这样就完美!但是,作为一个有追求的程序员,我还想让它更完善一点。比如,如果月份小于 10,就在前面补个 0,让它显示成 `01`、`02` 这样。

javascript

JS获取当前月份的正确姿势,告别低效代码!

let now = new Date();

let month = *() + 1;

if (month < 10) {

month = '0' + month;

*(month); // 如果是 1 月,输出:01

JS获取当前月份的正确姿势,告别低效代码!

搞定! 这样,无论现在是几月份,都能正确显示。

总结一下这回的小实践: new Date():获取当前时间。 getMonth():获取月份(0-11,需要加 1)。 注意月份的起始值:getMonth() 返回的月份是从 0 开始的,使用时要记得加 1。

JS获取当前月份的正确姿势,告别低效代码!

可以根据需求进行格式化:比如补 0,或者转换成中文月份等等。

虽然只是一个小小的功能,但通过这回实践,我对 JavaScript 的 Date 对象有更深入的解。以后再遇到类似的需求,就能更快更准确地完成。希望这回分享对大家有所帮助!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]