JS高阶---对象创建模式(5种)

【前言】

  JS高阶---对象创建模式(5种)  

   函数高级部分先看到这里,接下里看下面向对象高级部分

1、对象创建模式
2、继承模式

【主体】

(1)Object构造函数模式

JS高阶---对象创建模式(5种)

案例如下:

 JS高阶---对象创建模式(5种)测试结果如右图所示JS高阶---对象创建模式(5种)

(2)对象字面量形式创建

JS高阶---对象创建模式(5种)

案例如下:

JS高阶---对象创建模式(5种)结果如右侧所示JS高阶---对象创建模式(5种)

(3)工厂模式创建对象

JS高阶---对象创建模式(5种)

案例如下:

 JS高阶---对象创建模式(5种)

工厂模式问题--局限性,验证如下

JS高阶---对象创建模式(5种)

(4)自定义构造函数模式

JS高阶---对象创建模式(5种)

 案例如下:

JS高阶---对象创建模式(5种)

验证如下

 JS高阶---对象创建模式(5种)

缺点验证:

每个对象都拥有相同的数据,浪费内存

JS高阶---对象创建模式(5种)

(5)构造函数+原型<混合模式>

 JS高阶---对象创建模式(5种)

 JS高阶---对象创建模式(5种)

验证如下:

JS高阶---对象创建模式(5种)

此时实例对象上只有属性,方法在原型上
此时两个方法便是同一个,也就解决了上述浪费内存的问题。

.