数据类型检测
- typeof
- instanceOf
- constructor
- Object.ptototype.toString.call()
typeof
- 检测数据类型,返回字符串类型的
- null --> “object” null代表空对象指针
- typeof + 对象数据类型 --> “object”不能具体细分对象数据类型中的对象、数组、正侧
- 可以检测函数
instanceOf检测实例是否属于某个类,返回true或false
- 只要当前类在当前实例的原型链上,也会检测到
- 继承可以导致检测结果不准确
- instanceOf不能检测通过字面量方式创建的基本数据类型的值 constructor
f.constructor校验当前实例是否是Fn的一个实例,返回true或false- 当修改原型的空间地址,或通过继承修改了原型链,都回导致检测结果不准
Object.prototype.toString.call()
- 通过自定义类创建的实例,返回"[object Object]"