我想知道是否有可能吗?
让我们假设:
var a = 2592;
var b = 2584;
if(a nearly equal to b) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
jAn*_*ndy 21
像这样.
var diff = Math.abs( a - b );
if( diff > 50 ) {
console.log('diff greater than 50');
}
Run Code Online (Sandbox Code Playgroud)
如果绝对差值大于50使用Math.abs和简单比较,则可以进行比较.
小智 8
这是旧学校的方式......
approxeq = function(v1, v2, epsilon) {
if (epsilon == null) {
epsilon = 0.001;
}
return Math.abs(v1 - v2) < epsilon;
};
Run Code Online (Sandbox Code Playgroud)
所以,
approxeq(5,5.000001)
Run Code Online (Sandbox Code Playgroud)
是的,同时
approxeq(5,5.1)
Run Code Online (Sandbox Code Playgroud)
是假的.
您可以明确调整epsilons中的传递以满足您的需求.千分之一通常涵盖我的javascript舍入问题.
| 归档时间: |
|
| 查看次数: |
6604 次 |
| 最近记录: |