怎么让js中date进行加减运算
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么让js中date进行加减运算相关的知识,希望对你有一定的参考价值。
js中没有如同C#中的AddDays的方法,所以重写了Date对象的prototype,扩展了增加日期的方法,
代码如下:
Date.prototype.Format = function(fmt)
//author:
meizz
var o
=
"M+" : this.getMonth() + 1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth() + 3) / 3), //季度
"S" : this.getMilliseconds() //毫秒
;
if
(/(y+)/.test(fmt))
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 -
RegExp.$1.length));
for (var k
in o)
if (new RegExp("(" + k + ")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) :
(("00" + o[k]).substr(("" + o[k]).length)));
return
fmt;
Date.prototype.addDays = function(d)
this.setDate(this.getDate() + d);
;
Date.prototype.addWeeks = function(w)
this.addDays(w * 7);
;
Date.prototype.addMonths= function(m)
var d =
this.getDate();
this.setMonth(this.getMonth() + m);
if
(this.getDate() < d)
this.setDate(0);
;
Date.prototype.addYears = function(y)
var m =
this.getMonth();
this.setFullYear(this.getFullYear() + y);
if (m
< this.getMonth())
this.setDate(0);
;
var now = new Date();
now.addDays(1);//加减日期操作
alert(now.Format("yyyy-MM-dd")); 参考技术A 先利用getTime()转换成毫秒格式,再进行加减运算;
然后再利用setTime()换成日期格式输出;本回答被提问者和网友采纳
Js日期加减(天数),时间加减,日期运算
根据传入的日期做加减法计算,整数为加法,负数为减法,但是是天。
num可传入: 1,2,3,-1,-2,-3等,默认是加一天;date可传入: 2017-01-01格式的,不传的话默认是当天日期。
function dateChange(num = 1,date = false)
if (!date)
date = new Date();//没有传入值时,默认是当前日期
date = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
date += " 00:00:00";//设置为当天凌晨12点
date = Date.parse(new Date(date))/1000;//转换为时间戳
date += (86400) * num;//修改后的时间戳
var newDate = new Date(parseInt(date) * 1000);//转换为时间
return newDate.getFullYear() + '-' + (newDate.getMonth() + 1) + '-' + newDate.getDate();
1、dateChange(); //当前日期加一天
2、dateChange(30);//当前日期加30天
3、dateChange(-10); //当前日期加-10天
4、dateChange(3, '2018-02-27'); 指定日期加3天
5、dateChange(-2, '2016-3-1'); 指定日期加-2天
以上是关于怎么让js中date进行加减运算的主要内容,如果未能解决你的问题,请参考以下文章