64-битный формат IEEE-754 или что-то с числами [дубликат]

243
22 марта 2017, 18:10

На данный вопрос уже ответили:

  • Вычисления на числах с плавающей точкой не работают 1 ответ

Мне непонятна система битов как 64 бита образуют число? из этой статьи

alert( 9999999999999999 ); // выведет 10000000000000000

"Причина – потеря точности.

Из 64 бит, отведённых на число, сами цифры числа занимают до 52 бит, остальные 11 бит хранят позицию десятичной точки и один бит – знак. Так что если 52 бит не хватает на цифры, то при записи пропадут младшие разряды."

Получается число 1 занимает 64 бита? почему он не становится 2? Какова вероятность что при работе с числами, что-то подсчитается неправильно? Где можно подробней ознакомиться с этой технологией.

Или облегчите душу тем, что, можно хорошо программировать не зная этого мрако6есия...

Answer 1

Как я понял, работать с числами больше 9999999999999999 нельзя, и если складывать дробные числа, то использовать toFixed:

(0.1 + 0.2).toFixed(1) == 0.3
READ ALSO
Как просмотреть значение переменной в cshtml при отладке Visual Studio?

Как просмотреть значение переменной в cshtml при отладке Visual Studio?

При наведении на name не показывает её значение

262
Пустой photos_list при работе с VK API

Пустой photos_list при работе с VK API

Загружаю фотографию к себе в альбом согласно документации:

325
Поле для ввода номера телефона на чистом JS

Поле для ввода номера телефона на чистом JS

Здравствуйте, хочу сделать поле для ввода номера телефона, при нажатии на поле появлялся +, как первый знак, после чего можно было ввести еще...

902