<script type="text/javascript"> var Singleton = function() { var _instance = null; return { getInstance : function() { if (!_instance) { _instance = ['a', 'b', 'c', 'd']; } return _instance; } } }(); document.write(Singleton.getInstance()); </script>
保证只有一个实例对象,并且提供一个方法可让全局访问到此实例对象。
一些应用场景:
某些JavaScript的UI组件中,需要获取页面的DOM对象,只需要调用getInstance方法时返回该实例(调用时才判断是否已被初始化)的引用即可。
实际中的应用如一个Dialog框:alert型、confirm型、loading型、login型..,可能只在需要创建一次容器(为避免频繁对DOM树的修改引发DOM的reflow而导致的消耗系统资源或是产生内存泄露)
xmlns="http://www.w3.org/1999/xhtml"> 单例模式