Указатель NULL
- это тот, который указывает на никуда. Когда вы разыскиваете указатель p
, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p
является нулевым указателем, местоположение, хранящееся в p
, является nowhere
, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception
.
В общем, это потому, что что-то не было правильно инициализировано.
Класс Числа JavaScript имеет a toFixed()
функция, которая получит Вас, что Вы хотите.
Таким образом, Вы могли сделать parseFloat("1.0019999").toFixed(3)
и это дало бы Вам 1.002.
Параметр (3 в этом случае) является количеством цифр для показа после десятичной точки
0.002 не может быть точно представлен как основа 2 числа. Подобный способу, которым 1/3 не может быть представлен в основе 10.
1/3 = 0,33333... повторения. Для представления числа точно в основе 10 Вам было бы нужно бесконечное число десятичных цифр.
0.002 число, которое может быть точно представлено в основе 10 (как мы видим здесь), но не в основе 2, как используется компьютерами. Для представления этого числа точно, взял бы бесконечное число двоичных единиц информации.
Это - известная проблема: см. accuraty проблема и минимизация проблемы точности: минимизация
Если Вы хотите к быстрому исправлению, Вы можете вокруг к ближайшей тысячной части
Math.round ((1.001+0.001) *1000)/1000