我从服务器获取时间(以毫秒为单位)。我将其转换为日期并获取 - Mon Jul 22 2013 11:16:01 GMT+0200 (W. Europe Daylight Time) 作为记录中的日期。
我想将星期一、星期二等的数据分成数组。我正在考虑将此日期转换为 Mon Jul 22 2013 23:59:59 GMT+0200 (W. Europe Daylight Time),然后过滤掉记录。
如何将日期更改为所需的一天结束时间?还是有更简单的方法来做到这一点?
我从服务器获取时间(以毫秒为单位)。我将其转换为日期并获取 - Mon Jul 22 2013 11:16:01 GMT+0200 (W. Europe Daylight Time) 作为记录中的日期。
我想将星期一、星期二等的数据分成数组。我正在考虑将此日期转换为 Mon Jul 22 2013 23:59:59 GMT+0200 (W. Europe Daylight Time),然后过滤掉记录。
如何将日期更改为所需的一天结束时间?还是有更简单的方法来做到这一点?
您总是可以使用现有日期的年、月和日属性构造一个新的 DateTime 对象,如下所示:
var actualDate = new Date(); // 2013-07-30 17:11:00
var endOfDayDate = new Date(actualDate.getFullYear()
,actualDate.getMonth()
,actualDate.getDate()
,23,59,59); // 2013-07-30 23:59:59
var now = new Date().getTime();
var endOfDay = moment(now).endOf("day").toDate(); // Wed Jan 20 2016 23:59:59 GMT-0800 (PST)
对于未来的访客,只需使用
var start = new Date();
var end = new Date();
start.setHours(0,0,0,0);
end.setHours(23,59,59,999);
var actualDate = new Date()
var eodDate = new Date(Math.floor(actualDate.getTime()/86400000+1)*86400000 + actualDate .getTimezoneOffset()*60000 - 1000)
其中 86400000 是一天中的总毫秒数
如果两个日期对象在同一天,则它们具有相同的日期字符串:
new Date('1374488161000').toDateString()
=> "Tue Jul 30 2013"
new Date('13744917610403').toDateString()
=> "Tue Jul 30 2013"
虽然比较天数的方法相当幼稚,但它可能是最简单的比较。