标签:对象 属性 操作 new call aaa 字符串 区分 不能
js中有六大数据类型,null,undefined,Number,String,Boolean,Object(引用类型包含Array,Function);
首先你可能会想到
typeof操作符的结果有六种,都是字符串: 分别是Undefined,String,Boolean,Number,Object,Function。
可以看出typeof对于区分数据类型有两大问题
问题1 null也返回Object,null是空对象引用
问题2 对于对象实例的构造类是不能区分的,仅仅对Function有一定识别能力
instanceof运算符用来判断一个构造函数的prototype属性所指向的对象是否存在另外一个要检测对象的原型链上
function Person(){};
var p =new Person();
console.log(p instanceof Person);//true
Object.prototype.toString.call
例如: Object.prototype.toString.call(‘aaaa‘) // [object String]
通过调用该方法可以获取对象的构造class类
标签:对象 属性 操作 new call aaa 字符串 区分 不能
原文地址:https://www.cnblogs.com/shiyujian/p/9430732.html