JavaScript 前一天 本月最后一天

2021-02-04  乐帮网

javascript

Js中取日期的前一天常用的方法有两种,分别如下:

1、利用setDate方法

  // date is Date type
        function getPreDate(date, preDays) {
            return new Date(date.setDate(date.getDate() - preDays));
        }

2、使用时间戳运算

//lebang2020.cn
 function getPreDate2(date, preDays) {
            return new Date(date.getTime() - 24 * 60 * 60 * 1000 * preDays);
        }

方法1在各大浏览器上新旧版本目前没有发现错误,不过还是推荐使用方法2,它比较严谨。

同理顺水推舟,我们现在可以按天计算各种场景了,比较加几天的日期,近30天的日期,后7天的日期等等。

这里还扩展了当月的最后一天,或者指定日期月份的最后一天,也是利用上述函数可以计算出来,代码如下:

//date is Date type
  function getLastDay(date) {
            return new Date( new Date(date.getFullYear(), date.getMonth(), 1).getTime() - 24 * 60 * 60 * 1000);
        }

可以使用如下代码测试上述函数

 function format(date) {
            var y = date.getFullYear();
            var m = date.getMonth() + 1;
            var d = date.getDate();
            return y + '-' + m + '-' + d;
        }
        let a = getPreDate(new Date(), 5);
        let b = getPreDate(new Date(), 1);
        let aa = getPreDate2(new Date(), 5);
        let bb = getPreDate2(new Date(), 1);
        let last = getLastDay(new Date());

文章地址

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力