之前做播放器的時候被浮點運算坑過开缎,當時試了幾種精確的方法粒褒,總結一下好用的吧,私以為這種東西知道個一兩種可以了(呵呵噠??)耿焊。
有兩個經(jīng)典的坑爹運算:
Paste_Image.png
導致的原因很簡單揪惦,IEEE754的設計缺陷(所謂的浮點數(shù)精度損失)。
減法的解決辦法
作比較罗侯,基本上小于一個精度的范圍就可以視為相等的:
Paste_Image.png
var equal = Math.abs(x-y) < 0.000001;
返回false就是不等
用.toPrecision(10)和.toFixed(10)
Paste_Image.png