我有一个时间跨度列表(实际上是对象列表),例如 2:00、15:00、18:00 等,它是 UTC 格式。现在我想将此时间段转换回 CST,然后对其进行排序,因为我希望我的时间在 cst 中排序。
对于时区转换,我需要临时日期。所以我通过moment.utc(mytimespan)选择当前的UTC日期。并通过 .tz("CST") 执行时区转换。
所以列表被转换为 20:00,9:00, 12:00
请注意,我在列表中获得了 20:00 的第一名而不是最后一名。这是由于时间的日期部分回到了日期。
我想要的只是我的时间跨度,没有任何日期影响。
请我找到一种无需字符串转换的方法!
谢谢
更新
我目前使用字符串转换的工作代码
TimeSpanDetails.sort(function compare(a, b) {
return moment(moment.utc(a.startTime).tz("CST").format("HH:mm"),"HH:mm").isAfter(moment(moment.utc(b.startTime).tz("CST").format("HH:mm"),"HH:mm")) ? 1 : -1;
});
现在我想不使用格式进行字符串转换