Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
Lexxtor
@Lexxtor
PHP, Yii2, Android
JavaScript
Почему JavaScript неправильно считает некоторые float числа?
Например JS дает такие неправильные результаты:
9 - 129.05 = -120.05000000000001
0.013+0.001 = 0.013999999999999999
Вот тут короткий пример кода:
jsfiddle.net/8VeY7/2
Почему так происходит и как с этим бороться?
Вопрос задан
более трёх лет назад
10562 просмотра
Комментировать
Подписаться
5
Оценить
Комментировать
Facebook
Вконтакте
Twitter
Решения вопроса
1
zenaku
@zenaku
Это
тебе поможет
Ответ написан
более трёх лет назад
7
комментариев
Нравится
1
7
комментариев
Facebook
Вконтакте
Twitter
Lexxtor
@Lexxtor
Автор вопроса
Какой кошмар.
Зачем так сделали? В других языках такой проблемы нет.
Написано
более трёх лет назад
Константин Довнар
@SolidlSnake
@Lexxtor
еще как есть. Числа с плавающей точкой, если не всегда, то еще очень долго будут большой головной болью для компьютеров.
Написано
более трёх лет назад
zenaku
@zenaku
echo (int) ( (0.1+0.7) * 10 ); // 7
Это у пхп.
Вот отрывок из той статьи:
"...в точности то же самое происходит в любом другом языке, где используется формат IEEE 754, включая Java, C, PHP, Ruby, Perl."
Написано
более трёх лет назад
Lexxtor
@Lexxtor
Автор вопроса
@zenaku
ужас, впервые вижу такое.
Почему разработчики не сделали какое нибудь внутреннее решение, типа округления, чтобы не было таких ошибок?
Написано
более трёх лет назад
zenaku
@zenaku
Не знаю как у других, но у пхп есть функции произвольной точности
Написано
более трёх лет назад
Али Алиев
@ali_aliev
@Lexxtor
жжоте,
https://docs.python.org/2/tutorial/floatingpoint.html
www.cis.upenn.edu/~milom/cis371-Spring08/lectures/...
Написано
более трёх лет назад
susnake
@susnake
@zenaku
Я хоть и не занимаюсь программированием, но почитать было интересно, спасибо :)
Написано
более трёх лет назад
Пригласить эксперта
Ответы на вопрос
0
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
JavaScript
Простой
Переменная, созданная в разных местах работает в addEventListener по-разному, почему?
1 подписчик
вчера
149 просмотров
2
ответа
JavaScript
+1 ещё
Простой
Как сделать, чтобы свойства класса прописывались не DOM-узлу, а классу, создаваемому в JS?
1 подписчик
14 июл.
112 просмотров
2
ответа
JavaScript
+1 ещё
Средний
Как сделать перетаскиваемые окна?
2 подписчика
14 июл.
113 просмотров
1
ответ
JavaScript
Простой
Только на мобильной версии сайта не работает отправка формы на почту?
1 подписчик
09 июл.
199 просмотров
2
ответа
JavaScript
Простой
Как добавить ограничение на перемещение с transform translate?
1 подписчик
08 июл.
122 просмотра
1
ответ
JavaScript
+1 ещё
Простой
Как сделать, чтобы на сайте картинка при нажатии открывалась в большом размере а при повторном щелчке возвращалась к исходнику? В HTML?
1 подписчик
07 июл.
977 просмотров
6
ответов
JavaScript
+3 ещё
Простой
Как открыть ссылку из html-файла на диске в той же вкладке браузера?
1 подписчик
07 июл.
232 просмотра
2
ответа
JavaScript
+2 ещё
Средний
Как сделать такой эффект фона на css/js?
2 подписчика
06 июл.
1667 просмотров
0
ответов
JavaScript
Простой
Как отображать HTML в виде текста, но и не поломать markdown?
1 подписчик
03 июл.
177 просмотров
1
ответ
JavaScript
+1 ещё
Средний
Как создать плиточное меню WP с различным кеглем, по мере варьирования числа постов в категориях?
1 подписчик
02 июл.
140 просмотров
1
ответ
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
JavaScript Developer (KESL)
Лаборатория Касперского
JavaScript Developer (NGFW)
Лаборатория Касперского
Frontend developer (JavaScript, jQuery)
Karma8
от 150 000 до 320 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама