我需要知道一个小时是否在两个小时之间,为此我有以下算法:
const startHour = dayjs( startTime ).hour();
const startMinute = dayjs( startTime ).minute();
const endHour = dayjs( endTime ).hour();
const endMinute = dayjs( endTime ).minute();
filteredData = data.filter( ( item ) => {
const hour = dayjs.unix( item.generatedAt ).hour();
const minute = dayjs.unix( item.generatedAt ).minute();
if ( hour >= startHour && hour <= endHour ) {
if ( hour === startHour && minute < startMinute ) {
return false;
}
if ( hour === endHour && minute > endMinute ) {
return false;
}
return true;
}
return false;
} );
问题是,我的客户机使用的是GMT-4,而服务器使用的是UTC,所以如果我的客户机选择了一个时间,比如22:00 p.m.,那么服务器上的这个时间就是2:00 am,所以条件将为false。
我该如何纠正这个错误?
我在使用dayjs图书馆。
1条答案
按热度按时间ccrfmcuu1#
你应该调整时区为这时间从服务器象下面: