2011-02-01 72 views

回答

29

你必須使用getDate()和的setDate()Date對象分別獲取和設置日期的日值的方法。

var date = new Date(); 
date.setDate(date.getDate() + 1); 

Check the MDC Date object reference的更多信息,與日期

+4

如果遵守夏令時並且如果第二天時間向前/向後移動,則會中斷。所以,正確的解決方案是date.setTime(date.getTime()+ 86400000); – venkatagiri 2012-10-25 12:46:24

+0

我還遇到了一個問題,如果日期是月底,它一直想要在一個月的某天過去。所以十二月將有32天。下面的Pablo解決方案是可行的。 – cbloss793 2014-12-19 22:16:46

6

試試這個:

//create the date 
var myDate = new Date(); 

//add a day to the date 
myDate.setDate(myDate.getDate() + 1); 
+0

將不會在該月的最後一天,這個休息時間嗎?我正在使用類似的東西,它會在31日返回「32」的一天。 – Darren 2012-08-31 17:33:06

+0

@dkrape:不,它不會。 – 2012-08-31 21:09:52

2
dt = new Date(); 
dt.setDate(dt.getDate() + 1); 
38

這將讓明天的日期工作:

var a = new Date((new Date()).valueOf() + 1000*3600*24); 
1

如果「加1天爲」你的意思是「添加24小時「,即將24 * 60 * 60 * 1000毫秒添加到JavaScript日期對象,則正確的解決方案是:

var d = new Date(); 
d.setTime(d.getTime() + 86400000); 
console.log('24 hours later'); 
console.log(d); 

正如@venkatagiri在先前的評論中指出的那樣,實際上這將在所有場景中爲當前JavaScript日期對象增加24小時,而如果涉及夏令時間交叉,則d.setDate(d.getDate() + 1)不會。請參閱this JSFiddle以查看2013年DST開始的不同背景(2013年3月10日凌晨2:00,DST區域時間向前移動一小時)。 setDate()在這種情況下只增加了23小時,而setTime()增加了24

0
var d = new Date(); 

var curr_date = d.getDate(); 

var n =curr_date; 

jQuery(".class_name:eq(0)").text(n); 

var m =[d.getDate()+1]; 

jQuery(".class_name:eq(1)").text(m);