javascript-单例模式

  1. 特点:一个类在整个程序的运行过程中只有一个实例对象
  2. js中的单例模式:

通过自定义构造函数的方式,创建多个相同的对象

javasript有两种实现方式:

(1)利用惰性函数实现单例模式

具体的实现过程:

1.声明一个构造函数
2.在构造函数内部声明一个变量(函数的静态属性) instance
3.利用惰性函数的属性,实现构造函数的自我更新,并返回instance
4.设置旧构造函数的对象(this)为新新构造函数的原型对象(这部分导致新构造函数的构造器属性为旧对象的构造器属性,所以要在第6步进行修正)
5.使用new 构造函数的方式创建一个新的对象,并将新的对象赋值给instance
6.修正instance对象的构造器属性指向新对象
7.通过instance来设置对象的属性和方法
8.返回instance
javascript-单例模式_第1张图片

(2)利用即时函数实现单例模式:

利用小闭包将所有的代码都包裹起来。
javascript-单例模式_第2张图片

你可能感兴趣的:(javascript-单例模式)