我需要在输入字段中显示date and time
。在一天开始的第一个datetime value
,在一天结束的第二个datetime value
。我使用moment.js
和moment-timezone.js
从00:00:00
到02:59:59
每天代码显示意外结果。
代码显示前一天而不是当天。
这是jsFiddle example。
要查看我的意思,请打开浏览器控制台并将时间设置为从00:00:00
到02:59:59
和区域到Europe/Riga
的所有内容。
此问题显示在Windows 10 Pro
和当前的Chrome,Firefox和Opera上。
$(function() {
var myTime = moment(new Date()).utc().toDate();
myTime = moment(myTime).tz("Europe/Riga").format();
console.log('myTime = '+ myTime);
var startOfDay = moment().utc().startOf('day').subtract(3, 'h').toDate();
var endOfDay = moment().utc().endOf('day').subtract(3, 'h').toDate();
console.log('startOfDay = '+ startOfDay);
console.log('endOfDay = '+ endOfDay);
startOfDay = moment(startOfDay).tz("Europe/Riga").format();
endOfDay = moment(endOfDay).tz("Europe/Riga").format();
console.log('startOfDay = '+ startOfDay);
console.log('endOfDay = '+ endOfDay);
document.getElementById('date_from').value = startOfDay;
document.getElementById('date_to').value = endOfDay;
});
{--- console output start --------------------------------}
myTime = 2016-08-29T01:56:37+03:00
startOfDay = Sun Aug 28 2016 00:00:00 GMT+0300 (FLE Daylight Time)
endOfDay = Sun Aug 28 2016 23:59:59 GMT+0300 (FLE Daylight Time)
startOfDay = 2016-08-28T00:00:00+03:00
endOfDay = 2016-08-28T23:59:59+03:00
{--- console output end --------------------------------}
正如可以看到myTime
设置为8月29日,但startOfDay
和endOfDay
仍然会返回8月28日。
没有utc()
和subtract(3, 'h')
$(function() {
var myTime = moment().toDate();
myTime = moment(myTime).tz("Europe/Riga").format();
console.log('myTime = '+ myTime);
var startOfDay = moment().startOf('day').toDate();
var endOfDay = moment().endOf('day').toDate();
console.log('startOfDay = '+ startOfDay);
console.log('endOfDay = '+ endOfDay);
startOfDay = moment(startOfDay).tz("Europe/Riga").format();
endOfDay = moment(endOfDay).tz("Europe/Riga").format();
console.log('startOfDay = '+ startOfDay);
console.log('endOfDay = '+ endOfDay);
document.getElementById('date_from').value = startOfDay;
document.getElementById('date_to').value = endOfDay;
});
请告知。
感谢您的时间和知识。