一、原型
1.原型对象prototype的定义
javascript中的每个对象都有prototype属性,Javascript中对象的prototype属性的解释是:返回对象类型原型的引用。
每一个构造函数都有一个属性叫做原型。这个属性非常有用:为一个特定类声明通用的变量或者函数。
每一个函数对象都有一个prototype属性,但是普通对象是没有的。可以把公用的属性和方法,直接定义在prototype对象属性。
普通对象:字符串、数组、数字…
函数对象:function
在 JavaScript 中,对象是拥有属性和方法的数据。
2.原型对象属性
原型对象中包含两个属性:constructor和__proto__。
constructor这个属性是指创建原型的函数,它指向函数本身。
所有的对象都包含一个属性隐式原型(proto)。
注意:函数才有prototype,实例对象只有__proto__。
二、原型链
每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针,让这个原型对象(子的原型)等于要继承的引用类型(父)的实例,由于引用类型(父)的实例包含一个指向(父)原型对象的内部指针,以此类推,层层递进,便构成实例与原型的链条,即原型链。
prototype 原型
最新推荐文章于 2021-05-27 07:57:35 发布