浮点运算缺陷

之前做播放器的时候被浮点运算坑过,当时试了几种精确的方法,总结一下好用的吧,私以为这种东西知道个一两种可以了(呵呵哒🙄)。

有两个经典的坑爹运算:

Paste_Image.png

导致的原因很简单,IEEE754的设计缺陷(所谓的浮点数精度损失)。

减法的解决办法

作比较,基本上小于一个精度的范围就可以视为相等的:

Paste_Image.png

var equal = Math.abs(x-y) < 0.000001;
返回false就是不等

用.toPrecision(10)和.toFixed(10)
Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容