Js中处理日期加减天数

Js的处理日期还是很方便的。
一、 格式化日期为2017-07-04的格式

function formatTime(date) {
  var year = date.getFullYear();
  var month = date.getMonth()+1, month = month < 10 ? '0' + month : month;
  var day = date.getDate(), day =day < 10 ? '0' + day : day;
  return year + '-' + month + '-' + day;
}
var now = new Date();  //Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间)
formatTime(now)   //"2017-07-05"

二、实现加减一天
在此项目中日期已经是2017-07-04这样的格式,那加减天数怎么做呢?我首先想到的是使用split('-')方式拿到日期的项,然后实现加减再拼接到原来的年月上面。可是这样有一个问题:如果超过了当前月份的天数要在月份上加一,那这需要先拿到每个月份的日期数,然后做判断,十分麻烦。只好求助百度,发现了一个setDate()的方法,简直爽爆有木有。
现在时间格式是2017-07-05,需要先转换为Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间)这种型式。

var now = now.split('-')
now = new Date(Number(now['0']),(Number(now['1'])-1),Number(now['2']))  

这时候就可以利用setDate()方法

now.setDate(now.getDate() + 1)

setDate()不会返回任何值,而now的值会发生改变。

posted @ 2017-07-05 14:27  罗Q  阅读(34481)  评论(0编辑  收藏  举报