Надежная обработка даты и времени в функциях Firebase - PullRequest
0 голосов
/ 22 июня 2019

Итак, я использую функции базы данных Firebase в реальном времени и функции Firebase в качестве триггеров.

Наше приложение хранит ежедневные аналитические номера. Например, общее количество сообщений, полученных сегодня. Итак, в базе данных Firebase мы создаем узел с отметкой времени в начале дня. код для расчета, который выглядит следующим образом:

function findDayBegninning(date:any){
    const ms = date.getTime();
    const msPerDay = 86400 * 1000;
    return  ms - (ms % msPerDay);
}

Проблема в том, что мы не знаем, как настроить его для определенного часового пояса. Например, при текущем поведении отметка времени будет равна

1561075200000

, который в часовом поясе GMT ​​отображается как четверг, 20 июня 2019 года, 17:00.

Итак, в основном в моем часовом поясе день считается начинающимся в 5 вечера каждый день. Что, безусловно, является проблемой, так как мне нужно, чтобы это было 12:00 (полночь).

Итак, как с этим справиться? Просто добавьте (7 * 60 * 60 * 1000) к нему?

Я боюсь, что если вы сделаете это, то это приведет к ошибкам для какой-либо другой ежедневной статистики по часовому поясу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...