# 单例模式
> 单例模式的核心思想是:保证一个类仅有一个实例,并提供一个访问它的全局访问点
JavaScript 的单例模式不同于面向对象的应用,而在实际的开发中却有很多用途,例如提高页面性能,避免不必要的DOM操作。例如在我们点击登录后出现的登录浮窗,无论点击多少次登录按钮,这个浮窗都只会被创建一次。这里就可以用惰性单例模式来创建。
> 惰性单例是值在需要的时候才创建对象实例。
```html
Single Pattern
```
此时我们可以连续点击登录按钮,但 `invoked`只会输出一次,代表着实例只创建了一次并且之后使用的都是唯一的那个实例。
### 总结
- 单例模式的主要思想: 实例已经创建,就直接返回,反之,则创建新的实例。
- 符合开放封闭原则。