1. 程式人生 > >prototype、proto和constructor 關系

prototype、proto和constructor 關系

border idt class ont med pre highlight 雙向綁定 就是

記錄:

1、構造函數:如下,Foo()就是一個構造函數

function Foo(){}

2、prototype:每一個構造函數都有一個屬性叫prototype,相當於一個指針,指向它的原型對象

Foo.prototype     //指向原型對象

3、constructor:每個原型對象都有一個屬性叫constructor,也是一個指針,指向構造函數,從而實現了構造函數和其原型之間的雙向綁定。

function Foo(){}
console.log(Foo == Foo.prototype.constructor); //true

4、__proto__

:所有對象都有一個屬性叫__proto__,實例對象的__proto__指向該實例的原型對象

function Foo(){}
var foo=new Foo();
console.log(foo.__proto__ == Foo.prototype);      //true
console.log(foo.__proto__.__proto__ == Object.prototype); //true   因為 foo.__proto__.__proto__是Object的實例對象,所以它等於Object.prototype

  

prototype、proto和constructor 關系