我需要在JavaScript中增加一天的日期值。
例如,我有一个日期值2010-09-11,我需要将第二天的日期存储在一个JavaScript变量中。
如何将日期增加一天?
我需要在JavaScript中增加一天的日期值。
例如,我有一个日期值2010-09-11,我需要将第二天的日期存储在一个JavaScript变量中。
如何将日期增加一天?
当前回答
将当前日期的增量分配给其他变量
let startDate=new Date();
let endDate=new Date();
endDate.setDate(startDate.getDate() + 1)
console.log(startDate,endDate)
其他回答
我觉得没有什么比. gettime()和. settime()更安全的了,所以这应该是最好的,而且性能也很好。
const d = new Date()
console.log(d.setTime(d.getTime() + 1000 * 60 * 60 * 24)) // MILLISECONDS
. setdate()用于无效的Date(如31 + 1)太危险了,这取决于浏览器的实现。
在遵循其他人的建议之前,你首先需要解析你的字符串:
var dateString = "2010-09-11";
var myDate = new Date(dateString);
//add a day to the date
myDate.setDate(myDate.getDate() + 1);
如果你想让它恢复到相同的格式,你必须“手动”完成:
var y = myDate.getFullYear(),
m = myDate.getMonth() + 1, // january is month 0 in javascript
d = myDate.getDate();
var pad = function(val) { var str = val.toString(); return (str.length < 2) ? "0" + str : str};
dateString = [y, pad(m), pad(d)].join("-");
但我建议像其他回复中提到的那样获得Date.js,这将对你有很大帮助。
最简单的方法是转换为毫秒,然后加上1000*60*60*24毫秒,例如:
var tomorrow = new Date(today.getTime()+1000*60*60*24);
使用dateObj.toJSON()方法获取日期的字符串值参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toJSON 从返回值中切片日期,然后增加所需的天数。
var currentdate = new Date();
currentdate.setDate(currentdate.getDate() + 1);
var tomorrow = currentdate.toJSON().slice(0,10);
var myDate = new Date();
//add a day to the date
myDate.setDate(myDate.getDate() + 1);