2010-11-24 3 views
1

У меня есть два двойных значения.как манипулировать значением?

один - 103,4738, а другой - 103,4728, так как они всего лишь 0,001.

Есть ли функция javascript/способ, который я могу сделать, чтобы проверить значение. Значение означает, что если значение равно +/- 0,0005, это будет пропуск ... а если нет, это будет ошибкой?

Благодаря ~

ответ

5

Один из способов вычитать и увидеть разницу

var diff = number1 - number2; 
if (Math.abs(diff) <= 0.0005) { 
    // Pass 
    ... 
} else { 
    // Fail 
} 

Примечание: В зависимости от значения, выбранного в качестве бара для удовлетворения (в данном случае 0,0005), вы можете столкнуться с тонким округлением ошибок из-за характера чисел с плавающей запятой. Если вы не знакомы с этим вы можете прочитать следующие

+0

бить меня к нему ... – Ahmad

+0

ооо хорошо .. спасибо много. не знал, что это будет всего лишь несколько строк кода :) – Dayzza

0
var diff = Num1-Num2; 
var status = (Math.abs(diff) <= 5*Math.pow(10,-5)) ? true : false; 
+0

извините, но, что делает эта строка кода? :) 5 * Math.pow (10, -5) – Dayzza

+1

5 * Math.pow (10, -5) = 0,0005. Я сделал это, чтобы сделать его более общим, и, если потребуется, вы можете изменить эту константу в будущем – Pratik

Смежные вопросы