原型对象与原型链-->让我康康!

211 阅读1分钟

一:原型对象

1.原型对象的概念:创建函数的时候,系统会自动创建一个对应的对象,称之为原型对象.

2.作用:解决内存资源浪费+全局变量污染

3.构造函数\原型对象\实例对象的关系

构造函数: 有一个prototype属性,指向原型对象

原型对象: 有一个constructor属性,指向构造函数

实例对象: 有一个_proto_属性,指向原型对象

4.原型对象 三者关系:

image.png

5.静态成员实例成员:

1>.静态成员:函数的属性->静态方法:Object.value(对象名) 返回值是一个数组,村粗对象的每一个属性

01.Object.value(person)

02.Object.keys(person)

2>.实例成员:实力对象的属性

6.面向对象的三大特征:

(1)封装:把代码放入到对象的方法中

(2)继承性:一个对象(子元素)拥有另一个对象(父元素)的全部成员

(3)多态性:一个对象在不同情况下的不同状态

image.png

image.png

二.原型链

1.原型链:每一个对象都有自己的原型,而原型也是对象也有自己的原型,以此类推形成链式结构,称之为原型链,原型链的终点是 null

2.原型链规则:就近原则

对象先访问自己的,当自己没有的时候就找自己的原型,当自己原型也没有的时候,会访问自己原型的原型,一直到自己的终点null,当都没有找到的时候, 属性则就获取 undefinde,方法则会报错

原型链: image.png 打印台:输出

image.png

image.png 查看p1的原型:

image.png