【发布时间】:2021-09-28 12:48:29
【问题描述】:
我有一个 ISO 格式的字符串日期和一个 HH:mm 格式的字符串。 我想知道字符串 ISO 日期的小时是否相同或在格式 HH:mm 的字符串之前。
例子:
const isoDateString = '2021-09-28T07:30:00Z' // UTC
const hour = '07:30' // not UTC
-> result true
---
const isoDateString = '2021-09-28T07:30:00Z' // UTC
const hour = '08:30' // not UTC
-> result false
我正在使用时刻,这是我的代码:
const TIME_FORMAT = 'HH:mm'
const isoDateString = '2021-09-28T09:30:00Z'
const hour = '07:30'
const isHourSameOrBeforeIsoString = moment(
moment(isoDateString).format(TIME_FORMAT),
).isSameOrBefore(moment(hour, TIME_FORMAT));
console.log(isHourSameOrBeforeIsoString)
它不起作用。在这两种情况下它都返回 false。为什么?
【问题讨论】:
-
这很可能是时区问题,因为
hour变量没有指定一个 -
@KrzysztofKrzeszewski 我也试过
const isHourSameOrBeforeIsoString = moment( moment(isoDateString).format(TIME_FORMAT), ).isSameOrBefore(moment.utc(hour, TIME_FORMAT))。还是一样,还是不行
标签: javascript momentjs