美文网首页
js 数据类型判断

js 数据类型判断

作者: 醉青风 | 来源:发表于2021-08-23 11:05 被阅读0次

    借鉴(https://www.cnblogs.com/onepixel/p/5126046.html

    基本类型:String、Number、Boolean、Symbol、Undefined、Null
    引用类型:Object

    1、typeof 取基本类型数据的类型

    使用: typeof(数据) 如: typeof('123')

    • 对于基本类型,除 null 以外,均可以返回正确的结果。
    • 对于引用类型,除 function 以外,一律返回 object 类型。
    • 对于 null ,返回 object 类型。
    • 对于 function 返回 function 类型。

    2、instanceof 判断数据是不是某类型

    使用: (数据 instanceof 类型 ) 如: console.log({} instanceof Object)

    • 对应数组可以等于 Object 和 Array

    3、constructor

    使用: 数据.constructor == 类型 如: [].constructor == Array

    • null 和 undefined 是无效的对象,因此是不会有 constructor 存在的,这两种类型的数据需要通过其他方式来判断。

    • 函数的 constructor 是不稳定的,这个主要体现在自定义对象上,当开发者重写 prototype 后,原有的 constructor 引用会丢失,constructor 会默认为 Object

    4、toString

    使用: Object.prototype.toString.call(数据 ) 如: Object.prototype.toString.call('')

    • toString() 是 Object 的原型方法,调用该方法,默认返回当前对象的 [[Class]] 。这是一个内部属性,其格式为 [object Xxx] ,其中 Xxx 就是对象的类型。
      对于 Object 对象,直接调用 toString() 就能返回 [object Object] 。而对于其他对象,则需要通过 call / apply 来调用才能返回正确的类型信息。

    相关文章

      网友评论

          本文标题:js 数据类型判断

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