美文网首页程序员技术栈读书简友广场
前端之路——JavaScript中的类型

前端之路——JavaScript中的类型

作者: 三点水滴 | 来源:发表于2019-03-24 11:16 被阅读44次

    JavaScript中的类型

    null和undefined

    nullundefined是JavaScript中两个特殊的原始值,代表了各自类型(nullundefined)中唯一的值

    • null

      null 是JavaScript的关键字

      typeof null // “object”

      可以理解为null是一个特殊的对象,含义是“非对象”,可以用来表示数字,字符串,对象是无值的。

    • undefined

      undefined是预定义的全局变量(不是关键字)

    null和undefined都表示“值的空缺”,用==判断会返回true, 需要使用===

    null == undefined   //true
    null === undefined      //false
    

    number

    JavaScript中不区分整数和浮点数,一律采用64位浮点数表示。

    • 整数

      • 能够表示的整数范围是 -2^{53}~2^{53} ,包含边界值。在实际操作的过程中则是基于32的整数(数组索引,位运算)。

      • JavaScript中算术运算在上溢下溢被零整除时不会报错,结果会是Infinity-Infinity(上溢,被零整除)和0-0

        正零和负零在被用作除数时,结果分别时Infinity-Infinity,其他情况下二者完全相等。

      • 零除零0/0是没有意义的,结果是NaN(Not a Number)。

        Infinity/Infinity,给负数开方,算术运算符与非数字或无法转换为数字的操作数一起使用,结果都是NaN。

        NaN与任何值都不相等,包括其本身。

    • 浮点数

      • 小数部分只能精确表示2的负整数次幂,即2^{-1}2^{-2}... (这是由二进制决定的)

        也就是说0.1也无法精确表示

    boolean

    boolean类型只有两个值,true和false。

    任意的JavaScript值都可以被转换成boolean值

    • 以下值都会被转换成boolean

      undefined、 null、 0、-0、NaN、 “”(空字符串)

    • 对象值都会被转换成true

      Boolean('false') //true

    相关文章

      网友评论

        本文标题:前端之路——JavaScript中的类型

        本文链接:https://www.haomeiwen.com/subject/ppoeeqtx.html