js中判断对象instanceof constructor的比较

为啥JS中判断对象是否是类的实例推荐使用instanceof而不推荐constructor??
因为instanceof不但可以判断出是直接类的实例(通过new的方式),还可以判断是否是父类的实例
而constructor属性只可以判断出是否是直接类的实例。
从继承的角度看instanceof更加适合。

上代码

function Demo(name,age){
    this.name = name;
    this.age = age;
}

var demo_1 = new Demo("1023",25);
/*测试instanceof*/
console.log(demo_1 instanceof Demo); //true
console.log(demo_1 instanceof Object);//true

/*测试constructor*/
console.log(demo_1.constructor == Demo);//true
console.log(demo_1.constructor == Object);//false

关键字:JavaScript, oop, 高级

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部