JavaScript поставляется с 64-битными числами с плавающей запятой для всех числовых литералов, а структура и диапазон хранилища регулируются в соответствии с ITEE 754 .
С другой стороны, я узнал, что у поплавка есть диапазон от ± 10 ^ -323,3 до ~ 10 ^ 308,3 и максимально возможная точность. Целое число имеет диапазон -2 ^ 53 - 2 ^ 53 и надежную точность.
ITEE 754 объясняет поведение чисел с плавающей точкой, но меня смущает целое число в JS. Как диапазон точности генерируется из 64-битного формата данных?
[Решено]
Значение сохраняется в позиции дроби.
1 is (1+0)*2^0
, 2 is (1 + 0) * 2^1
, 3 is (1 + 2^-1)*2^1
... Любое число от -2 ^ 53 до 2 ^ 53 может быть точно выражено.
Поскольку для всей дроби есть начальный 1, диапазон составляет от -2 ^ 53 до 2 ^ 53