javascript getTime()为旧日期返回的值大于新日期
javascript getTime()返回1970年1月1日午夜的毫秒数和日期对象中的时间值。但是,javascript getTime()为旧日期返回的值大于新日期,javascript,date,Javascript,Date,javascript getTime()返回1970年1月1日午夜的毫秒数和日期对象中的时间值。但是, new Date('Wed Sep 16 2105 05:30:00 GMT+0530').getTime() // returns 4282502400000 new Date('Tue Oct 26 2015 05:30:00 GMT+0530').getTime() // returns 1445817600000 晚些时候(2015年10月26日星期二05:30:00
new Date('Wed Sep 16 2105 05:30:00 GMT+0530').getTime()
// returns 4282502400000
new Date('Tue Oct 26 2015 05:30:00 GMT+0530').getTime()
// returns 1445817600000
晚些时候(2015年10月26日星期二05:30:00 GMT+0530)返回的值不应该更大吗。
我想查找给定日期(通知时间戳)和今天之间的列表日期。我在编写下面的代码时假设getTime()为旧日期返回的值总是小于新日期
var timestamp = new Date('9/15/2105, 12:00:00 AM').getTime();
var startDate = new Date(timestamp);
// Date.UTC() to avoid timezone and daylight saving
var date = new Date(Date.UTC(startDate.getFullYear(),
startDate.getMonth(),
startDate.getDate()
));
var currentDay = new Date();
var currentDayTimestamp = new Date(Date.UTC(currentDay.getFullYear(),
currentDay.getMonth(),
currentDay.getDate()
)).getTime();
// day in millisec, 24*60*60*1000 = 86400000
date = new Date(date.getTime() + 86400000);
var dates = [];
console.info(date + ' : ' + date.getTime());
console.info(new Date(currentDayTimestamp) + ' : ' + currentDayTimestamp);
while(date.getTime() <= currentDayTimestamp) {
var dateObj = {
date: date.getUTCDate(),
month: date.getUTCMonth() + 1,
year: date.getUTCFullYear()
}
dates.push(dateObj);
date = new Date(date.getTime() + 86400000);
}
console.info(JSON.stringify(dates));
OUTPUT:
Wed Sep 16 2105 05:30:00 GMT+0530 (IST) : 4282502400000
Tue Oct 27 2015 05:30:00 GMT+0530 (IST) : 1445904000000
[]
var timestamp=新日期('9/15/2105,12:00:00 AM')。getTime();
var startDate=新日期(时间戳);
//Date.UTC()以避免时区和夏令时
var date=新日期(date.UTC(startDate.getFullYear(),
startDate.getMonth(),
startDate.getDate()
));
var currentDay=新日期();
var currentDayTimestamp=新日期(Date.UTC(currentDay.getFullYear(),
currentDay.getMonth(),
currentDay.getDate()
)).getTime();
//以毫秒为单位的天,24*60*60*1000=86400000
日期=新日期(date.getTime()+86400000);
var日期=[];
console.info(date+':'+date.getTime());
console.info(新日期(currentDayTimestamp)+':'+currentDayTimestamp);
而(date.getTime()问题在于你的日期有误。你的日期是2105年,比2015年大得多