как получить вчерашнее время старта в UTC с помощью моментов - PullRequest
0 голосов
/ 20 апреля 2019

Я хочу получить секунды эпох, используя моменты.

Например, время сейчас равно 2019-04-20T15:07:04.388Z EST, я хочу получить время начала вчерашнего дня 2019-04-19T00:00:00.000Z в UTC.

Я пробовал приведенный ниже код -

    const now = new Date();
    const start = moment(now) // get current datetime
        .utcOffset(0) // convert to UTC
        .subtract(24, "hours") // go 24 hours into the past
        .startOf("day") // get the start of the date we landed on
        .unix(); // get unix timestamp
    console.log(now);
    console.log(start);

Вывод вышеуказанной программы - -

    Sat Apr 20 2019 15:11:23 GMT-0400 (EDT) {}
    1555650000

В соответствии с https://www.unixtimestamp.com/index.php 1555650000 переводится в Fri, 19 Apr 2019 05:00:00 +0000.Но я хочу, чтобы это было Fri, 19 Apr 2019 00:00:00 +0000 в UTC.

Версия momentjs, используемая в нашем коде -

"moment": "2.24.0",
"moment-timezone": "^0.5.23"

Есть идеи, как мне это получить?

1 Ответ

0 голосов
/ 22 апреля 2019

вы можете попробовать этот однострочный оператор

console.log( moment.utc().subtract(1, 'days').startOf('day').toString()); 

Вывод: вс 21 апреля 2019 00:00:00 GMT + 0000

...