关于用Object.create创建出来的对象的实例问题

用Object.create(obj)创建出来的对象是以obj为原型的一个对象,该对象是obj的类型的实例可以理解,但是为什么这个对象同时也是以obj为原型的类型的实例呢?

代码如下:


function Father(){};

var father=new Father;

function Son1() {};

Son1.prototype=father;

function Son2() {};

Son2.prototype=father;


var target=Object.create(father);

console.log(target instanceof Son1);   //true

console.log(target instanceof Son2);   //true


总感觉target和Son1、Son2是同级,但是结果是target同时是Son1和Son2的实例,这很费解~


杨__羊羊
浏览 524回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript