标签:垃圾 一个 方式 web 使用 引用 htm 创建 单例模式
单例模式的实现方式,“江湖”上常用的招式就是先判断存在者,如果存在者存在,则不创建新的存在者,直接返回已存在的存在者;如果存在者不存在,则创建新的存在者;在写web一个对话Dialog时,突然想到,这个dialog需要保持全局唯一,这时候除了用到上面的方法外,其实还可以在创建新dialog之前移除旧有的dialog dom元素,以保持全局唯一。亦即先销毁存在者,再创建新的存在者。
亦即:
1.判断创建方式
2.销毁创建方式
(是否有其他的方式?)
这两种方式在不同的场景下特点不同:
比如Java、Js中:Java中的对象是通过垃圾回收期处理的,Js也是仿照处理。虽然程序员可以通过手动消除引用为null,但在堆内存中的对象还需等待处理。所以经常用到的单例模式实现方式为第一种方式。
另外:像在C系语言、web中html的元素,前者可以直接操作内存,后者可以直接操纵html dom,除了使用第一种方式外,还可以使用第二种方式。
但是这两种方式是各有特点,在实现时需要考虑是否需要保持状态,时空复杂度等。
标签:垃圾 一个 方式 web 使用 引用 htm 创建 单例模式
原文地址:https://www.cnblogs.com/luanfujian/p/13236382.html