首页 > 试题广场 >

js判断类型

  1. typeof专门用于判断变量属于那种基本类型,或者变量是否为引用类型,无法判断出变量属于具体哪种引用类型。对于所有引用类型,只有两种返回值:function、object
  2. instanceof用于判断引用类型变量属于具体哪种类型的实例
  3. Object.prototype.toString.call(obj).slice(8,-1):可以判断任意类型的数据。加一个call是因为不论是Function还是Array,继承了toString()方法后都对其进行了重写,根据原型链我们知道,一个方法自身存在就不会沿着原型链寻找。我们知道,对一个Function调用toString打印的是方法体的内容,对一个Array调用toString打印的是所有元素拼接的字符串。所以我们需要调用真正存在于Object原型身上的toString方法(打印数据类型)。
  4. constructor可以判断任意类型的数据,但有被重写的风险,因此不建议使用。


编辑于 2021-10-12 11:31:43 回复(0)
<p>1、typeof () 会返回一个字符串,既对应的数据类型</p><p>2、instanceof 方法,用于识别对象类型和判断一个对象是否属于某个构造函数的实例,实例语法:变量名 instanceof 数据类型</p><p>3、Object.prototype.toString方法</p>
发表于 2020-06-06 13:07:12 回复(0)