首页 > 其他 > 详细

prototype、proto和constructor 关系

时间:2018-07-30 01:00:43      阅读:213      评论:0      收藏:0      [点我收藏+]

记录:

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 关系

原文:https://www.cnblogs.com/clicklin/p/9388387.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!