构造函数和原型

new的时候做的的4个事情

1.在内存中创建一个新的空对象

2.让this指向这个新对象

3.执行构造函数里的代码  给这个新对象 添加属性和方法

4. 返回这个新对象

 

静态成员与实例成员

静态成员:由构造本身创建的成员 只能由构造函数本身来访问

实例成员:在构造函数内部创建的对象成员为实例成员 只能由实例化对象来访问

 

构造函数原型prototype

什么是原型对象:一个构造函数的属性 这个属性也是对象  称prototype 为原型对象

原型对象对象相当于公共区域   所有同一个类的实例都可以访问这个原型对象 可以将这个对象中的共有内容 统一设置在原型对象中

在js中 每当定义一个函数 就会自带一个prototype属性   这个属性指向原型对象 并且这个属性是一个数据类型的值   不包括箭头函

总结:所有公共属性写在构造函数里面  所有公共方法写在原型对象里面  每个对象都有一个属性  对象原型 执行原型对象

 

 

对象原型_proto_

主要作用:指向prototype

每一个对象都有一个原型 作用指向原型对象prototype

构造函数和原型对象都有一个原型属性proto 指向构造函数的prototype原型对象  

1.proto是一个标准属性 不可以拿来赋值和设置只读属性 2. proto对象原型和原型对象prototype是等价的   

 

原型链

 找一个函数的方法  找的时候就是在当前对象找 找不到就去prototype找 然后再去proto找  接着去object找 直到找到的是null  这就是原型链吧

 

 

 

 

 

 

 

 

posted @ 2020-11-02 15:32  随心的笔记  阅读(175)  评论(0)    收藏  举报