判断小数是否相等

1月以前  |  阅读数:37 次  |    

//肯定有人会说这还不简单,直接用'==='比较;
//实际上0.1+0.2 !==0.3,因为计算机不能精确表示0.1, 0.2这样的浮点数,所以相加就不是0.3了

Number.EPSILON = (function() { //解决兼容性问题
    return Number.EPSILON ? Number.EPSILON : Math.pow(2, -52);
})();
//上面是一个自调用函数,当JS文件刚加载到内存中,就会去判断并返回一个结果

function numbersequal(a, b) {
    return Math.abs(a - b) < Number.EPSILON;
}
//接下来再判断   
const a = 0.1 + 0.2, b = 0.3;
console.log(numbersequal(a, b)); //这里就为true了

相关文章:


SSH 登录失败:Host key verification failed

PHP分页显示制作详细讲解

PHP自定义函数获取搜索引擎来源关键字的方法

将二进制数据转为16进制以便显示

在Zeus Web Server中安装PHP语言支持

让你成为最历害的git提交人

Java生成UUID

再谈PHP中单双引号的区别详解

获取IMSI

PHP实现简单爬虫的方法

php+ajax+json 详解及实例代码

Python 2与Python 3版本和编码的对比

php实现数组中索引关联数据转换成json对象的方法

php封装的page分页类完整实例

wget使用技巧

桌面中心(一)创建数据库

PHP设计模式之工厂模式与单例模式

php数组合并array_merge()函数使用注意事项

getAttribute和getAttributeNode

Yii2汉字转拼音类的实例代码