Все сервисы Хабра
Сообщество 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
Почему так происходит и как с этим бороться?
Вопрос задан
более трёх лет назад
10507 просмотров
Комментировать
Подписаться
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
+2 ещё
Простой
Как сделать пролистывание картинок в карточке товара?
1 подписчик
4 часа назад
49 просмотров
1
ответ
JavaScript
+2 ещё
Средний
Как манипулировать файлами в React с State Manager-ами?
1 подписчик
вчера
41 просмотр
0
ответов
JavaScript
+1 ещё
Простой
Почему дрожит содержимое при измении размера окна браузера?
3 подписчика
23 мар.
318 просмотров
1
ответ
JavaScript
+1 ещё
Средний
Анимация JS, CSS. Как сделать эффект фонарика?
1 подписчик
22 мар.
164 просмотра
1
ответ
JavaScript
Средний
Gsap scroll trigge как сделать рабочим скроллинг внутри окна?
1 подписчик
22 мар.
26 просмотров
0
ответов
JavaScript
+1 ещё
Простой
Есть ли аналоги kladr api с возможностью запросов через JS?
1 подписчик
21 мар.
84 просмотра
1
ответ
JavaScript
+3 ещё
Простой
Почему node.js runtime есть столько памяти?
4 подписчика
21 мар.
1199 просмотров
2
ответа
JavaScript
+1 ещё
Простой
Как с помощью js центрировать rect внутри svg?
1 подписчик
20 мар.
88 просмотров
0
ответов
JavaScript
Сложный
Почему именно такой порядок вывода в консоль?
4 подписчика
19 мар.
2726 просмотров
2
ответа
JavaScript
Средний
Какой порядок в event loop?
2 подписчика
18 мар.
514 просмотров
1
ответ
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Бэкэнд-разработчик JavaScript
Wanted.
•
Москва
от 250 000 до 400 000 ₽
JavaScript веб-разработчик (Backend)
TurboProject
от 60 000 ₽
Senior Frontend (JavaScript) разработчик
Vital Partners
от 350 000 до 420 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама