Проблема с MomentJS, использующим utc и начинающимся около полуночи

#javascript #datetime #momentjs #utc

Вопрос:

Мне нужно иметь 00:00 текущего дня в utc и отметку времени, поэтому я делаю что-то подобное:

 moment().utc().startOf('day').valueOf()  

Я вижу, что кто-то предлагает использовать :

 moment.utc().startOf('day').valueOf()  

но я не нашел различий…

В любом случае, моя проблема в другом: я работаю в смещении 1, поэтому моя проблема в том, что когда я пытаюсь взять полночь (начало («день»)), а местное часовое время находится между 00:00 и 01:00, у меня полночь предыдущего дня.

вот какой-то журнал консоли, чтобы быть клэр:

 console.log("test1", moment().format()) gt;"test1", "2021-11-24T00:21:52 01:00"  console.log("test2", moment.utc().format()) gt;"test2", "2021-11-23T23:21:52 00:00"  console.log("test3", moment().utc().format()) gt;"test3", "2021-11-23T23:21:52 00:00"  

как вы можете видеть, если местное время 00:21, utc-23:21, и если я попытаюсь сохранить начало («день») В результате у меня будет полночь предыдущего дня.

 console.log("test4", moment().startOf('day').format()) gt;test4", "2021-11-24T00:00:00 01:00"  console.log("test5", moment().utc().startOf('day').format()) gt;"test5", "2021-11-23T00:00:00 00:00"  

Мне нужно использовать UTC и начало

Как я могу решить проблему, чтобы иметь также текущий день, если я попытаюсь поймать его между 00:00 и 01:00? есть идеи?

и одна и та же проблема может возникнуть между 00:00 и другим часовым поясом, а не только 1

если бы, например, я находился в зоне 2, моя проблема была бы перенесена между 00:00 и 02:00

Спасибо

Комментарии:

1. Таким образом, вы после начала даты UTC, основанной на локальном времени, даже если дата UTC-предыдущий день?.

2. ^ Если это так -gt; moment(moment().startOf('day').format().slice(0,19) ' 00:00').format()

3. это означает, что на самом деле вы не хотите UTC.

4. QnD: new Date(new Date().toLocaleDateString('en-CA')).toISOString() .

5. @Keith точный Мне нужно начало текущего дня, даже если UTC даст мне предыдущий день