可能か知りたいのですが?
仮定しましょう:
var a = 2592;
var b = 2584;
if(a nearly equal to b) {
// do something
}
可能か知りたいのですが?
仮定しましょう:
var a = 2592;
var b = 2584;
if(a nearly equal to b) {
// do something
}
そのようです。
var diff = Math.abs( a - b );
if( diff > 50 ) {
console.log('diff greater than 50');
}
絶対差が50
使用Math.abs
と単純な比較よりも大きい場合、それは比較されます。
これが古い学校の方法です...
approxeq = function(v1, v2, epsilon) {
if (epsilon == null) {
epsilon = 0.001;
}
return Math.abs(v1 - v2) < epsilon;
};
それで、
approxeq(5,5.000001)
は真ですが、
approxeq(5,5.1)
は偽です。
ニーズに合わせて明示的にイプシロンのパスを調整できます。通常、1000 分の 1 で、JavaScript の丸めの問題がカバーされます。
var ratio = 0;
if ( a > b) {
ratio = b / a;
}
else {
ratio = a / b;
}
if (ratio > 0.90) {
//do something
}