要努力啊小汤!
当你的才华还不足以撑起你的野心时,你应该静下心学习!!!

数值(number):int float

特殊数值NaN,不等于任何值包括本身!

Boolean(NaN) // false

NaN === NaN // false
typeof NaN // 'number'

Js内部的值都是64位浮点数【符号位(0正1负)+指数(2-12位)+小数(13-64位)】形式存储,大于2的53次方以后,整数运算的结果开始出现错误

能够表示的数值范围为21024到2-1023(开区间)

可以用科学计数法表示数值

Math.pow(2, 1024) // Infinity:无穷
正向溢出
Math.pow(2, -1075) // 0
负向溢出

0 +0 -0相等,作分母返回值不等,
除以正零得到+Infinity,除以负零得到-Infinity,这两者是不相等的
Number.MAX_VALUE // 1.7976931348623157e+308
Number.MIN_VALUE // 5e-324
  • 十进制:没有前导0的数值。
  • 八进制:有前缀0o0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值。
  • 十六进制:有前缀0x0X的数值。
  • 二进制:有前缀0b0B的数值。

 

与数值相关的全局方法:

    1. parseInt():将字符串转为整数;进制间转换
      【遇到不能转换成数字的字符,即停止,返回转换成功的字符串;第一个都不能转换的,返回NaN】
      1.      
      parseInt('8a') // 8
      2.
      parseInt('1000', 2) // 8
      parseInt('1000', 6) // 216
      parseInt('1000', 8) // 512
    2. parseFloat():将字符串转为浮点数;
    3. isNaN():判断一个值是否位NaN;
                     当传入位字符串的时候,字符串、对象、数组会先转换为NaN,
                     空数组和只有一个数值成员的数组,返回false

      isNaN('Hello') // true
      // 相当于
      isNaN(Number('Hello')) // true

       

      isNaN([]) // false
      isNaN([123]) // false
      isNaN(['123']) // false

      使用前,先判断数据类型:
      function myIsNaN(value) {
        return typeof value === 'number' && isNaN(value);
      }
      判断NaN更可靠的方法是,利用NaN为唯一不等于自身的值的这个特点,进行判断。
      function myIsNaN(value) { return value !== value; }
    4. isFinite():返回一个布尔值,表示某个值是否为正常的数值
      除了Infinity-InfinityNaNundefined这几个值会返回falseisFinite对于其他的数值都会返回true
posted on 2020-10-28 09:26  做一个有趣的妞儿  阅读(175)  评论(0)    收藏  举报