js高级 构造函数和原型

1.构造函数

构造函数是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与new一起使用。我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。
在JS中,使用构造函数时要注意以下两点:


1. 构造函数用于创建某一类对象,其首字母要大写
2.构造函数要和new一起使用才有意义

new 在执行时会做四件事情:
① 在内存中创建一个新的空对象。
2 让this指向这个新的对象。
③执行构造函数里面的代码,给这个新对象添加属性和方法。
4返回这个新对象(所以构造函数里面不需要retum)。

2.构造函数创建对象

a34a520d60a5476a8ca15e539f9f67b1.png

 构造函数的属性和方法我们成为成员7db6a71f36864215923d641796a0a63c.png

3.构造函数原型 prototype

构造函数通过原型分配的函数是所有对象所共享的。
JavaScript规定,每一个构造函数都有一个prototype属性,指向另一个对象。注意这个prototype就是一个对象,这个对象的所有属性和方法,都会被构造函数所拥有。
我们可以把那些不变的方法,直接定义在prototype对象上,这样所有对象的实例就可以共享这些方法。

1.原型是什么?

一个对象,我们也称为prototype为原型对象。

2.原型的作用是什么?

共享方法。(一般情况下,我们把公共属性定义在构造函数里,公共方法定义到原型对象里)

4.对象原型 __proto__ 

对象身上系统自己添加一个 __proto__  指向我们构造函数的原型对象(prototype)

36659d9ea06241d89558ebe60335904a.png

 5.constructor属性

constructor属性 在构造函数的原型对象未被重写时默认指向的是调用它的构造函数

很多情况下,需要我们手动指定返回。

ad1c1fb8a4a3497d9d2f5431a4679804.png

 

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

146cf6f0083f49468b34aedd72749ce6.png

 

原型链

93ab5126d74549cfb492657ed9ba77eb.png

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值