javascript对象的几种创建方式
1,工厂模式
工厂模式是用函数来封装创建对象的细节,在函数里面创建对象并返回对象,就有些像工厂里的流水线一样。
2,构造函数模式
构造函数模式,即通过给构造函数传递不同的参数,然后调用构造函数来创建不同对象。
3,原型模式
使用原型对象的好处就是,可以让所有对象实例共享它所包含的属性和方法。
4,混合构造函数和原型模式
组合使用中,构造函数模式用于定义实例自己的属性,原型模式用于定于方法和共享的属性。
这种构造函数与原型混合的模式,是目前使用较多的。其它创建对象的方式还有动态原型模式、寄生构造函数模式、稳妥构造函数模式。
5,动态原型模式
动态原型模式是由构造函数和原型模式组合而成的
这是一个典型的构造函数,通过使用new函数,实例化一个box对象
6,寄生构造函数模式
当你需要创建一个自定义类型的时候,当前面的随笔中的模式都不适用的情况下,可以使用寄生构造函数模式。这种模式的基本思想是创建一个函数,该函数的作用仅仅是封装创建对象的代码。
7,稳妥构造函数模式
道格拉斯 * 克罗克福德 发明了JavaScript中的稳妥对象这个概念.所谓稳妥对象,指的是没有公共属性,而且其方法也不引用this的对象。稳妥对象最适合用在一些安全的环境中(这些环境会禁止使用new和this),或者防止数据被其他的应用改动。
稳妥构造函数与寄生构造函数模式类似,但是也有两点区别:
1、稳妥模式不使用new操作符调用构造函数
2、新创建对象的实例方法不引用this