*** 获取当前月的最后一天

访客56年前关于黑客接单1167

为了更好的讲这节的内容,提醒一个 *** 处置日期的小技巧,想获取上个月最后一天,只需要设置SetDate参数为0即可。

var endDate = new Date();
//上个月最后一天
endDate.setDate(0);

接着正文更先:

使用 *** 获取当前月的最后一天,咱们通常的思绪先获取下个月的之一天,然后在减去一天,就是当前月的最后一天,以是自然会用到下面的代码:

var date= new Date();
date.setMonth(date.getMonth() + 1);
//日期设置为0号, 0示意1号的前一天
let lastDay = date.setDate(0);
console.log('最后一天:' + new Date(lastDay).toLocaleString())

我写此文的日期是2019.08.21,以是打印效果如下:

最后一天:2019/8/31 下昼4:10:43

那这样的算法有没有bug,咱们并不确定,以是为了还原现场,现在咱们从2019.01.31一个一个来试试

var date= new Date(2019, 0, 31); //0 示意1月
date.setMonth(date.getMonth() + 1);
// 日期设置为0号, 0示意1号的前一天
let lastDay = date.setDate(0);
console.log('最后一天:' + new Date(lastDay).toLocaleString())

打印:

最后一天:2019/2/28 上午12:00:00

咱们可以看到,我们把 1月31号往后拨一个月在往前减一天,理应获得的是 1月31号,现实获得的是 2月28号,以是咱们写的代码是有bug的。

这又是怎么肥事?

咱们可以列出月份:

1月   1 ....... 28 29 30 31
2月   1 ....... 28 
3月   1 ....... 28 29 30 31

咱们通过 month + 1,在 *** 中会明白成:

当前日期 + 当月的天数

以是上例中的 date.setMonth(date.getMonth() + 1) 等价于 1月31号 + 31天 ,凭据上面的列表,就可以看到效果是3月3号


以是不要以为 month + 1 就是月份加 1,它的意思是当前日期加上当月天数 。

那要怎么保证多了不会多跳一个月呢?

只要保证 month + 1 之前不会跨越28号就行啦,那要怎么做到呢?

推算:

  • 31号 + 31 会超
  • 30号 + 31 会超
  • 29号 + 31 会超
  • 28号 + 31 照样 28 号 恰好

以是窍门在把31号回拨到28号就行啦,以是多加以下这句话就行了:

date.setDate(28)

完整代码:

var date= new Date(2019, 0, 31); //0 示意1月
date.setDate(28)
date.setMonth(date.getMonth() + 1);
// 日期设置为0号, 0示意1号的前一天
let lastDay = date.setDate(0);
console.log('最后一天:' + new Date(lastDay).toLocaleString())    

运行效果:

相关文章

上海预约平台 真实会员和经纪人亲测五大平台【中再市】

“上海模特预约平台 真实会员和经纪人亲测五大平台【中再市】”,身高165cm,体重52kg,学历为高中,是一位清纯美女,健康匀称的90后女生,她从事的其她职业包括:教育/培训,愿意与适合的游伴结伴旅游...

断掌男人对老婆好吗(嫁给断掌的男人好不好)

有的人手是断掌,有的人川字掌,不过这些在中都是有一些含义的,那要说双手断掌的男人,他的命运是怎么样的,有很多人不知道答案了。那么,双手断掌纹的男人命运是怎么样的呢?是好还是坏?来看看。 双断掌男人命运...

收徒的黑客可信吗(中国第一黑客收徒)

收徒的黑客可信吗(中国第一黑客收徒)

  移动互联网勒索主要是通过一下几个方面来实现:   通过购买大量的被黑客泄露的用户各种账号信息,然后使用“撞库”的方法筛选有效的账户信息,最后修改用户账户密码的信息来锁定用户设备(只要是针对苹果用户...

衡山西站的车站特点(京广高铁沿线所有客运火车站汇总)

  北京西站(Beijingxi Railway Station),又称北京西客站,位于中国北京市丰台区,是中国铁路北京局集团有限公司管辖的特等站,是北京铁路枢纽的重要组成部分。   涿州东站(Zhu...

问下各位掘友,有没有这种可视化界面轮子,可以手动添加组件,拖动添加等,最后生成a?

问下诸位掘友,有木有这类数据可视化页面车轮子,能够手动式加上部件,拖拽加上等,最终形成a?...

摘星黑客(摘星科技有限公司)

摘星黑客(摘星科技有限公司)

本文导读目录: 1、基努里维斯是谁? 2、爱情保卫战火爆女友你真臭毛病是一期 3、女主是黑客小说? 4、求推荐关于女主是电脑高手,黑客的言情小说,女主是一名大学生计算机系 5、现代重生...