Я запутался в объекте JavaScript Date
и getTime()
. От: Минимальная и максимальная дата
В нем говорится, что фактические max и min. количество миллисекунд (мс), представляемое объектом JS Date
(-/+) 8.640.000.000.000.000 мс с 01 января 1970 г. UTC.
Однако для 8.640.000.000.000.000 требуется 53 бит.
С другой стороны, все JS-номера представляют собой 64-битные поплавки с только 52 дробными битами (исключая знаковый бит).
Как JS может хранить результат Date.getTime()
когда Date
является максимальным или минимальным значением даты? Для этого нужно использовать один из битов экспоненты, правильно?
Означает ли это также, что преобразование Date
JS (через его количество) в int64 (например, для использования в Qt) не является строго возможным?
JavaScript представляет числа, используя формат двойной точности (64 бит) IEEE-754. он дает вам точность 53 бит. JS внутренне хранит как 64-битные числа с плавающей запятой, а даты JavaScript внутренне хранятся как миллисекунды с эпохи. Вы можете использовать метод getTime() JavaScript. Я вернусь к значению эпохи. Это значение эпохи можно использовать в Qt как значение эпохи или создать дату из этого значения эпохи, используя