zoukankan      html  css  js  c++  java
  • ES6 数值的扩展

     ES6 规范了二进制和八进制的表示方法,代码如下:

          console.log(0o2000 === 1024)                  //true            使用0o表示八进制   0是数字0  o是小写字母o
          console.log(0b10000000000 === 1024)           //true            使用0b表示二进制   0是数字0  b是小写字母b

    ES6 也将全局函数parseInt 和 parseFloat 移植到了 Number对象上面, Number对象也增加了isNaN 和 isInteger  方法 实例如下:

          //Number.isNaN   是判断参数的值是否为NaN
          Number.isNaN(NaN)                            //true
          Number.isNaN(1024)                           //false
          Number.isNaN("1024")                         //false 
          Number.isNaN(true)                            //false
          //Number.isInteger  判断参数的值是否为整数
          Number.isInteger(20);                         //true
          Number.isInteger(20.0);                       //true    因为在JS内部,整数和浮点数是同样的储存方法,所以20.0会被储存为20
          Number.isInteger(20.01);                      //false
          Number.isInteger("20");                       //false
          Number.isInteger(true);                       //false  

    Number对象中也增加了一个极小常量EPSILON.。由于浮点数计算并不精确,会导致无法判断浮点数的运算结果是否等于某个值,代码如下:

      

    (0.1+0.2)===0.3;                             //false

    这个时候,如果两个值的的误差小于极小常量EPSILON,就认为这两个值相等

    (0.1 + 0.2 - 0.3) < Number.EPSILON          //true
          
          //极小常量EPSILON可以任务JS能够表示出来的最小值,最小精度 如果一边得出来的结果小于EPSILON,就可以认证没有意义了,就不存在误差了
  • 相关阅读:
    hdu 刷题记录
    HDU step by step
    Codeforces Round #260 (Div. 2) B. Fedya and Maths
    Codeforces Round #260 (Div. 2) A. Laptops
    UVALive 6662 TheLastAnt
    UVALive 6661 Equal Sum Sets
    Codeforces Round #253 (Div. 2) A. Anton and Letters
    wikioi 3130 CYD刷题(背包)
    wikioi 1014 装箱问题(背包)
    [转]很特别的一个动态规划入门教程
  • 原文地址:https://www.cnblogs.com/banyuege/p/10653362.html
Copyright © 2011-2022 走看看