js设计模式:单例模式(1)

关于设计模式

简单理解设计模式就是针对编程过程中常出现的共性的问题,提出的一种解决办法。看了形形色色的关于设计模式的文章,自己根据理解算是写一些随笔吧!

单例模式实现

所谓的单例,就是说一个类只能有一个实例对象,实现的主要方法是:先判断该实例是否存在,如果存在,不作处理并返回,如果不存在,创建实例对象并返回。
js中,单例作为命名空间提供者,从全局命名空间里提供唯一的访问点来访问该对象
js中实现单例最简单的方法是使用对象字面量:

var defineSingleton = {
    "name": "josh",
    "age": 24,
    sayIt: function(){
        ....
    }
}

可以添加自己的私有成员和方法对上述对象进行扩展。(利用闭包来创建单例)

var defineSingleton = (function(){
    var private_age = 24,
        private_method = function(){
            alert('this is private!')
        }
    return {
        "name": "josh",
        "age": 24,
        sayIt: function(){
            private_method();
            return private_age
        }
    }
}());

单例使用场景及好处

有些对象我们只需要一个,比如说全局缓存、window对象,弹窗等。这个时候使用单例模式最合适不过。

好处:

  • 用来划分命名空间
  • 借助单例模式,把代码组织的更为一致,方便阅读和维护。

你可能感兴趣的:(js设计模式,设计模式,单例模式,创建型模式,js)