簡單說就是先把日期轉為timestamp,加減對應毫秒數之後再轉回來。
就沒有啥換月換年閏年三小的問題。
--
在前端程式設計中,經常需要對日期進行加減天、時、分、秒的操作,例如使用JS實現日期的倒計時。類似於C#中的AddDays、AddHours等,下面介紹在js中對日期加減的方法。
例如:當前日期為 2016-12-11 20:20:20
var t = new Date();//你已知的時間
var t_s = t.getTime();//轉化為時間戳毫秒數
t.setTime(t_s + 1000 * 60);//設定新時間比舊時間多一分鐘
alert(t) // 2016-12-11 20:21:20
t.setTime(t_s + 1000 * 60 * 60);//設定新時間比舊時間多一小時
alert(t) // 2016-12-11 21:20:20
t.setTime(t_s + 1000 * 60 * 60 * 24);//設定新時間比舊時間多一天
alert(t) // 2016-12-12 20:20:20
var t = new Date();//你已知的時間
t.setTime(t.setMinutes(t.getMinutes() + 1));//設定新時間比舊時間多一分鐘
alert(t) // 2016-12-11 20:21:20
t.setTime(t.setHours(t.getHours() + 1));//設定新時間比舊時間多一小時
alert(t) // 2016-12-11 21:20:20
轉自 https://www.itread01.com/p/1342858.html
--
留言列表