#javascript #momentjs
#javascript #momentjs
Вопрос:
Я хочу получить текущую временную метку, а затем сравнить ее с переменной, например, «21:00», чтобы узнать, соответствует ли текущее время этому времени.
Я добавил некоторую логику, используя moment.js чтобы получить временную метку, отформатируйте ее в HH:MM, затем используйте isBefore, но она всегда возвращает false, даже если она должна быть true . Я также получаю предупреждение об ограничении?
const currentTime = moment().format('HH:MM')
const deadline = '21:00'
moment(currentTime).isBefore(deadline, 'hour')
Если я регистрирую последнюю строку, она возвращает false, когда она должна быть true, и я получаю ошибку
Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged.
Комментарии:
1.
21:00
не определяет действительный момент в одном из распознанных стандартных форматов, потому что в нем отсутствует дата.2. Предупреждение об устаревании довольно ясно; формат не является одним из принятых форматов. Почему бы не предоставить формат и не сравнить моменты?
moment().isBefore(moment(deadline, 'HH:MM'), 'hour')