美文网首页
JS 数据类型

JS 数据类型

作者: LeonLi_9ea5 | 来源:发表于2019-06-24 14:53 被阅读0次

    七大数据类型

    Undefined、Null、Boolean、Number、String、Object、Symbol

    判断数据类型的 4 种方法

    typeof 操作符

    • undefined —— 未定义的值
    • boolean —— 布尔值
    • string —— 字符串
    • number —— 数值(包括 NaN )
    • object —— 对象 / null
    • function —— 函数

    instanceof 操作符

    1. instanceof 检测的是对象的原型
    2. 当 A 的 __proto__ 指向 B 的 prototype 时,就认为 A 就是 B 的实例
    3. 基本数据类型由字面量法创建的不能使用该操作符(如 123 instanceof Number 会报错,new Number(123) instanceof Number 返回 true)
    4. instanceof 遇到网页中包含的框架 ( iframe ) 时会失效,因为 instanceof 假定只有一个全局执行环境,所以来自不同 Window 的构造函数创建出来的实例是没有联系的

    Constructor

    1. constructor 本身是不稳定的,默认 Object,重写 prototype 时引用会丢失
    2. null 和 undefined 没有 constructor

    toString

    toString 是 Object 的原型方法,调用该方法返回值为 [object xxx]

    • [object String] —— '字符串'
    • [object Number] —— 123
    • [object Boolean] —— true
    • [object Symbol] —— Symbol('abc')
    • [object Undefined] —— undefined
    • [object Null] —— null
    • [object Function] —— new Function()
    • [object Date] —— new Date()
    • [object RegExp] —— new RegExp()
    • [object Error] —— new Error()
    • [object HTMLDocument] —— document
    • [object global] —— window

    == 操作

    • null == undefined —— true : undefined 值派生自 null,所以值相等
    • 0 == false —— true
    • "" == false —— true
    • null == false —— false
    • undefined == false —— false
    • NaN == NaN —— false
    • Symbol(123) == Symbol(123) —— false

    相关文章

      网友评论

          本文标题:JS 数据类型

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