JS日期的加减

本文介绍了一种使用JavaScript进行日期加减的方法,通过一个简单的函数实现了任意日期的向前或向后推移,适用于快速获取如三天前的日期等场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天有个需求说一进入页面要查询最近三天的数据。当然我们很容易能够获取当天的日期,但是三天前的日期就有点麻烦了,比如月初的第一天,或者年初的第一天。如果自己去算的话要花费不少功夫,要考虑月份、年份、甚至2月的话还有闰年,于是查阅资料,发现js有现成的日期加减计算。

JS的Date对象有四种创建方式:
var d = new Date(); //直接获得当前日期
var d = new Date(milliseconds); //传入日期的毫秒数
var d = new Date(dateString); // 传入时间字符串,经过我的验证,格式为:"2018-03-15"
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);//分别按年、月、日等逗号隔开传入

当然有了以上,我的需求也很好解决了,如下:
function AddDate(date,addDays){ //date传入你需要的日期,格式"xxxx-xx-xx"。addDays传要加减的日期数,往前传正数,往后传负数
    var Dates = new Date(date);
    Dates.setDate(Dates.getDate() + addDays);
    var mon = Dates.getMonth() + 1,
        day = Dates.getDate();
    if(mon < 10){
        mon = "0" + mon;//月份小于10,在前面补充0
    }
    if(day < 10){
        day = "0" + day;//日小于10,在前面补充0
    }
    return Dates.getFullYear() + "-" + mon + "-" +day;
}

调用方法:AddDate("2018-03-01",-2);
输出:"2018-02-27"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值