JS原型对象
2020-09-12 本文已影响0人
lin_lilili
1.什么是JS原型对象?
- prototype(原型对象)就是一个容器.
- 存放公共的方法给对象使用.
- 对象可以直接访问原型对象中的方法和属性.
2.没有原型对象来添加共享方法会怎么样?
- ES6之前,使用构建函数来创建对象.
- 对象的属性和方法定义在构建函数中.
- 方法在每个创建出来的对象中都需要开辟新的内存空间.很好用但是浪费内存.
3原型对象和函数之间的关系.
- 每个函数都会有一个
prototype属性,指向原型对象. - 每个原型对象都会有一个
constructor属性,指向函数. - 总结:每个函数与原型对象之间的关系是
互相引用.
(互相感知的关系)
函数与原型的关系
4对象和原型对象和函数之间的关系
- 函数创建对象
var o = new Fn(); - 对象通过
__proto__属性,指向原型对象. - 对象可以直接调用原型对象中所有的属性和方法.
- 对象可以通过原型对象中的constructor属性知道构造函数
console.log(o.constructor = Fn) //true
- 总结: 原型对象就是一个容器,帮助函数存放公共方法,以及给函数new出来的对象提供公共方法使用.
对象和原型对象和函数之间的关系