ES6 数值的扩展
?ES6 規范了二進制和八進制的表示方法,代碼如下:
console.log(0o2000 === 1024) //true 使用0o表示八進制 0是數字0 o是小寫字母oconsole.log(0b10000000000 === 1024) //true 使用0b表示二進制 0是數字0 b是小寫字母bES6 也將全局函數parseInt 和 parseFloat 移植到了 Number對象上面,?Number對象也增加了isNaN 和 isInteger? 方法 實例如下:
//Number.isNaN 是判斷參數的值是否為NaNNumber.isNaN(NaN) //trueNumber.isNaN(1024) //falseNumber.isNaN("1024") //false Number.isNaN(true) //false//Number.isInteger 判斷參數的值是否為整數Number.isInteger(20); //trueNumber.isInteger(20.0); //true 因為在JS內部,整數和浮點數是同樣的儲存方法,所以20.0會被儲存為20Number.isInteger(20.01); //falseNumber.isInteger("20"); //falseNumber.isInteger(true); //falseNumber對象中也增加了一個極小常量EPSILON.。由于浮點數計算并不精確,會導致無法判斷浮點數的運算結果是否等于某個值,代碼如下:
(0.1+0.2)===0.3; //false
?
這個時候,如果兩個值的的誤差小于極小常量EPSILON,就認為這兩個值相等
(0.1 + 0.2 - 0.3) < Number.EPSILON //true//極小常量EPSILON可以任務JS能夠表示出來的最小值,最小精度 如果一邊得出來的結果小于EPSILON,就可以認證沒有意義了,就不存在誤差了?
轉載于:https://www.cnblogs.com/banyuege/p/10653362.html
總結
- 上一篇: 使用CSS实现图片未加载完成时占位显示
- 下一篇: Unity 新手入门 如何理解协程 IE