js继承

function Animal(){

}

function Cat(){ 

  Animal.call(this);

}

function extend(Parent, Child){

  var F = function(){};

  F.prototype = Parent.prototype;

  Child.prototype = new F();

  Child.prototype.constructor = Child;

  Child.super = Parent.prototype;

}

 

 

console.log(Object.contructor == Function); //true

console.log(String.contructor == Function); //true

console.log(Function.contructor == Function); //true

 

function Foo(){}

var bar = {};

var a = new Foo();

console.log("bar.constructor : " + bar.constructor);
console.log("bar.prototype : " + bar.prototype);
console.log("bar.__proto__ : " + bar.__proto__);

console.log("a.constructor : " + a.constructor);
console.log("a.prototype : " + a.prototype);
console.log("a.__proto__ : " + a.__proto__);

console.log("Foo.constructor : " + Foo.constructor);
console.log("Foo.prototype : " + Foo.prototype);
console.log("Foo.__proto__ : " + Foo.__proto__);

console.log("Function.constructor : " + Function.constructor);
console.log("Function.prototype : " + Function.prototype);
console.log("Function.__proto__ : " + Function.__proto__);

console.log("Object.constructor : " + Object.constructor);
console.log("Object.prototype : " + Object.prototype);
console.log("Object.__proto__ : " + Object.__proto__);

 

 

先有的Object.prototype, Object.prototype构造出Function.prototype,然后Function.prototype构造出Object和Function。
Object.prototype是鸡,Object和Function都是蛋。

https://www.zhihu.com/question/35442532

http://blog.csdn.net/tom_221x/article/details/5316675

posted @ 2018-03-06 19:57  *﹏漸洐漸薳〆…  阅读(121)  评论(0编辑  收藏  举报