Я хотел бы преобразовать отметку времени в дату:
status_transitions:
{ finalized_at: 1557419382,
marked_uncollectible_at: null,
paid_at: 1557419384,
voided_at: null },
В частности, paid_at: 1557419384
. Но когда я пытаюсь new Date(1557419384)
, я не получаю ожидаемый результат. Если я использую Date.setMilliseconds (), я делаю.
Что особенно странно, так это вывод Date.setMilliseconds()
const ms = 1557419384;
const fromConstructor = new Date(ms);
const fromFn = new Date();
const strangeOutput = fromFn.setMilliseconds(ms);
console.log(`Milliseconds: ${ms}`);
console.log(`Output from setMilliseconds: ${strangeOutput}`);
console.log(`Date from new Date(ms): ${fromConstructor}`);
console.log(`Date using setMilliseconds(ms): ${fromFn}`);
Вывод кода выше:
Milliseconds: 1557419384
Output from setMilliseconds: 1558978824384
Date from new Date(ms): Sun Jan 18 1970 18:36:59 GMT-0600 (Central Standard Time)
Date using setMilliseconds(ms): Mon May 27 2019 12:40:24 GMT-0500 (Central Daylight Time)
Почему создание новой даты из числа не дает того же результата, что и setMilliseconds ()? Кроме того, почему выходные данные из setMilliseconds()
отличаются от фактических миллисекунд, переданных в?
Я прочитал документы , и они, кажется, подразумевают, что не должно быть никакой разницы между этими двумя методами.