以我的拙见,最好的方法是以毫秒为单位添加一整天,这取决于您如何考虑您的代码,如果您在本月的最后一天,它可能会搞砸。
例如 2 月 28 日或 3 月 31 日。
这是我将如何做的一个例子:
var current = new Date(); //'Mar 11 2015' current.getTime() = 1426060964567
var followingDay = new Date(current.getTime() + 86400000); // + 1 day in ms
followingDay.toLocaleDateString();
恕我直言,这可确保准确性
这是另一个例子。我不喜欢那个。它可以为你工作,但不像上面的例子那么干净。
var today = new Date('12/31/2015');
var tomorrow = new Date(today);
tomorrow.setDate(today.getDate()+1);
tomorrow.toLocaleDateString();
恕我直言 this === 'POOP'
由于夏令时,你们中的一些人对我的毫秒方法感到不满。所以我要抨击这个。首先,一些国家和州没有夏令时。第二 正好加上 24 小时就是一整天。如果日期编号每年不更改一次,但在 6 个月后得到修复,我认为那里没有问题。但是为了确定并必须处理分配的邪恶,Date()
我已经考虑过这一点,现在彻底讨厌伊达。所以这是我的新方法。
var dd = new Date(); // or any date and time you care about
var dateArray = dd.toISOString().split('T')[0].split('-').concat( dd.toISOString().split('T')[1].split(':') );
// ["2016", "07", "04", "00", "17", "58.849Z"] at Z
现在是有趣的部分!
var date = {
day: dateArray[2],
month: dateArray[1],
year: dateArray[0],
hour: dateArray[3],
minutes: dateArray[4],
seconds:dateArray[5].split('.')[0],
milliseconds: dateArray[5].split('.')[1].replace('Z','')
}
现在我们在祖鲁子午线清楚地写出了我们的官方有效国际日期对象。现在更改日期
dd.setDate(dd.getDate()+1); // this gives you one full calendar date forward
tomorrow.setDate(dd.getTime() + 86400000);// this gives your 24 hours into the future. do what you want with it.