首页 > 其他 > 详细

一篇文章搞懂原型、原型链、prototype、__proto__

时间:2019-10-13 15:30:36      阅读:99      评论:0      收藏:0      [点我收藏+]

在上一讲中,我们简单提到过 prototype 这一抽象化概念,那么在本讲中,我们来具体看一下到底什么是prototype原型,什么是原型链以及大家经常会遇到的问题之prototype/__proto__区别......blablaba

 

首先,需要大家明确一个概念 :

任意一个函数(包括构造函数)都有一个prototype属性,指向该函数的原型对象
任意一个构造函数实例化的对象,都有一个__proto__属性,指向构造函数的原型对象。
 
换言之:
每个构造函数(constructor)都有一个原型对象(prototype),
原型对象都包含一个指向构造函数的指针,
而实例(instance)都包含一个指向原型对象的内部指针.
 
看到这里,是不是有那么一点点绕~~ 下面上代码:
 
----------------------------------------------------------    一条分割线,千军万马来相见  (#_ #)  ---------------------------------------------------------
 
function Father(){
    this.property = true;
}
Father.prototype.getFatherValue = function(){
    return this.property;
}
function Son(){
    this.sonProperty = false;
}
// //继承 Father
Son.prototype = new Father();//Son.prototype被重写,导致Son.prototype.constructor也一同被重写
Son.prototype.getSonVaule = function(){
    return this.sonProperty;
}
var instance = new Son();
alert(instance.getFatherValue());//true

 

 

 

 

 

 

 

 

 

 

 

一篇文章搞懂原型、原型链、prototype、__proto__

原文:https://www.cnblogs.com/edwardwzw/p/11666349.html

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