美文网首页
Javascript基础进阶(九)单例模式

Javascript基础进阶(九)单例模式

作者: js_冠荣 | 来源:发表于2018-08-06 18:38 被阅读0次

    单例模式

    单例模式?

    大白话理解: 把描述同一事物(同一个对象)的属性和方法放在一个内存空间下,起到了分组的作用,这样不同事物之间的属性及时属性名相同,也互相不发生影响,这种分组模式叫做“单例模式”。
    单例模式是项目中经常用到的一种模式,因为用它做模块化开发。

    var fn = function() {
        return {
            name: '浮云先生',
            age: 18,
        }
    };
    var obj1 = fn()
    var obj2 = fn()
    // obj1 === obj2 // true
    

    obj1 和 obj2 互不影响

    高级单利模式

    var searchModel = (function(){
        function moadeA() {
              ....
        }
        return {
            moadeA: moadeA
        }
    })()
    
    searchModel .moadeA()
    

    利用jq callbacks

    var searchModel = (function(){
        var callbacks = $.callbacks()
        function moadeA() {
              console.log('A')
        }
        function moadeB() {
              console.log('B')
        }
        callbacks.add(moadeA)
        callbacks.add(moadeB)
        return {
            init: function() {
                callbacks.fire()
            }
        } 
    })()
    
    searchModel .moadeA()
    

    相关文章

      网友评论

          本文标题:Javascript基础进阶(九)单例模式

          本文链接:https://www.haomeiwen.com/subject/yjigvftx.html