JS:添加日期对象数组

时间:2020-06-27 17:36:08

标签: javascript

我尝试制作日期数组,但是当我按最后一个日期时,数组中的所有其他日期都将与最后一个日期相同。

var dateArayy=[];
var date = new Date();


function addone(){
date.setDate(date.getDate()+1); //add day to the date
dateArayy.push(date) ;
// i try also dateArayy[dateArayy.lenght]=date   THE SAME..

}


for (let i=1;i<10;i++){
 addone();
}
console.log(dateArayy)

2 个答案:

答案 0 :(得分:1)

您更改并在array中设置了相同的对象。您应该创建新的Date对象并将其添加到数组

var dateArayy = [];
var date = new Date();

function addone() {
  var newdate = new Date();
  newdate.setDate(date.getDate() + 1);
  date = newdate;
  dateArayy.push(date);
}

for (let i = 1; i < 10; i++) {
  addone();
}
console.log(dateArayy);

答案 1 :(得分:0)

let dates = [];
for (let i = 0; i < 10; i++) {
  let date = new Date();
  date.setDate(date.getDate() + i);
  dates.push(date);
}
console.log(dates);