last_day = yester_day = cur_day = new Date(date);
last_day.setTime(last_day.getTime()-7*24*60*60*1000);
yester_day.setTime(yester_day.getTime()-24*60*60*1000);
cur_day.setTime(cur_day.getTime());
console.log(last_day);
console.log(yester_day);
console.log(cur_day);
date传入2017-10-18
结果是:
Tue Oct 10 2017 08:00:00 GMT+0800 (中国标准时间)
Tue Oct 10 2017 08:00:00 GMT+0800 (中国标准时间)
Tue Oct 10 2017 08:00:00 GMT+0800 (中国标准时间)
不知道为什么?
原来是因为在js中date在使用的过程中始终是一个对象。上面三句话setTime下来,应该是2017-10-10号那天对应的日期了。
奇葩,深层原因我再查下。
在js中,date类型属于引用类型。所以这里这三个变量一直在相互影响。