Попробуйте: new_d = new Date(d.getTime() + 5140 * 1000)
Учитывая var d = new Date("2019-06-29 21:25:38+00")
, мой вывод 2019-06-29T22:51:18.000Z
для new_d
.
Причина, по которой это работает, заключается в том, что .getTime()
возвращает длинныйкоторый представляет количество миллисекунд с полуночи четверга, 1 января 1970 года ( за этим стоит забавная история).Вы также можете передать длинное Unix-время в конструктор Date()
, чтобы получить новый объект времени, поэтому, если вы можете выразить свое смещение в секундах, умножьте это значение на 1000, добавьте его к исходному длинному и выхорошо идти.