Day16-JS进阶-面向对象高级进阶

一、对象创建模式

二、继承模式

 

一、对象创建模式(用各种各样的方式来创建对象)

①方式一:Object 构造函数模式

Day16-JS进阶-面向对象高级进阶_第1张图片

 

 Day16-JS进阶-面向对象高级进阶_第2张图片

 

第二种方式:

Day16-JS进阶-面向对象高级进阶_第3张图片

 

 

方式三:工厂模式

Day16-JS进阶-面向对象高级进阶_第4张图片

 

 

Day16-JS进阶-面向对象高级进阶_第5张图片

 

 这种方法的不足就是 对象没有一个具体的类型,如果我们想要又这样具体的类型的话,就要自定义一个类型了

 

方式四:自定义构造函数模式

Day16-JS进阶-面向对象高级进阶_第6张图片

 

Day16-JS进阶-面向对象高级进阶_第7张图片

 

Day16-JS进阶-面向对象高级进阶_第8张图片

 

 这样的话这两个就有了具体的类型了,分别是 人 和 学生

==可以通过这样的方式来进行验证

Day16-JS进阶-面向对象高级进阶_第9张图片

 

 所以在这种方式下,就解决了方法三的弊端,就是没有自己的类型了,这里就很好的解决了

(这种的话,就是方法会在实例对象的上面,下面的方式就是直接吧方法定义在了原型对象里面了)

 

 方式六:构造函数+原型的组合模式

Day16-JS进阶-面向对象高级进阶_第10张图片

 

 

Day16-JS进阶-面向对象高级进阶_第11张图片

 

 

 

 ====扩展:工厂函数就是,这个函数有一个return 来返回一个对象的话,那它就是工厂函数了

 

你可能感兴趣的:(Day16-JS进阶-面向对象高级进阶)