我想在一个对象中存储两个值:today
, todayInOneYear
。我使用一个函数来计算+1年。
obj = {}
today = new Date();
obj = {
today: today,
oneYear: addOneYear(today)
}
console.log(obj)
function addOneYear(date) {
date.setFullYear(date.getFullYear() + 1);
return date;
}
问题:今天和今天inoneyear是一样的。但我想是两个不同的日期。从现在(今天)开始一次,一年后再一次。你知道我错过了什么吗?
您需要克隆Date对象:
obj = {}
today = new Date();
obj = {
today: today,
oneYear: addOneYear(today)
}
console.log(obj)
function addOneYear(date) {
let clone = new Date(date);
clone.setFullYear(clone.getFullYear() + 1);
return clone;
}
您可以试试下面的代码
obj = {}
today = new Date();
obj = {
today: today,
oneYear: addOneYear(today)
}
console.log(obj)
function addOneYear(date) {
const aYearFromNow = new Date(date);
aYearFromNow.setFullYear(aYearFromNow.getFullYear() + 1);
console.log(aYearFromNow)
return aYearFromNow;
}