Я написал быстрый JavaScript для простого расчета. Когда я запустил скрипт, был странный вывод, что я не могу объяснить ...Странный выход JavaScript при умножении
Сценарий был, в самом общем виде это:
for (var a=0;a<100;a++) {
var b= 3.6*a
document.write(b + "<br />");
}
Вот демо: http://jsfiddle.net/uKa2G/
Ожидая, что я получаю прямые одиночные или никакие десятичные ответы, но каждая строка будет иметь огромное десятичное число.
Если кто-то может объяснить, почему это будет оценено.
Это действительно 'i' или' a', или вы ленились? LOL – vee
Не возражайте, чтобы я нажимал неправильный ключ при вводе текста в поле ввода вопроса ^^ '' i 'должно быть' a ', оно все еще запутывается. – Phinet
Короткий ответ, заключающийся в том, что арифметика с плавающей запятой (то есть арифметика с нецелыми) имеет определенную степень неточности, поскольку компьютеры в целом только приближают значение числа с плавающей запятой в памяти (в отличие от целых чисел, которые могут быть смоделированы с точностью стоимость). –