频道栏目
首页 > 资讯 > JavaScript > 正文

设计模式学习 javascript 单例模式

17-06-09        来源:[db:作者]  
收藏   我要投稿

什么是单例模式?

保证一个类仅有一个实例,并提供一个访问它的全局访问点。

var SingleTon=(function(){
    var instance;
    var Student=function(){
        this.name="yqy";
        this.age=23;
    }



    return {
        getInstance:function () {

            if(!instance){
                instance =new Student();
            }
            return instance;
        }
    };

})();

var s1=new SingleTon.getInstance();
var  s2=new SingleTon.getInstance();
console.log("此时创建的Student是否是同一个Student:"+(s1===s2));

从代码中可以看出,Student是SingleTon私有的,用户无法直接创建这个对象,只能通过SingleTon返回实例,在SingleTon中只new 了一次,返回的会是同一个实例。

ps:===和==的区别

var i=1;
var j="1";
var k=1;

console.log((i==j)+";"+(i===j));//true;false
console.log((i!=j)+";"+(i!==j));//false;true
console.log((i==k)+";"+(i===k));//true;true
console.log((i!=k)+";"+(i!==k));//false;false

===和==不同在于,===是要比较类型的,然后再比较值,==不同类型的时候会先转换然后再比较值。

相关TAG标签
上一篇:ios的警告不针对react native A warning from Apple [resolved, not about React Native]
下一篇:java设计模式 中介者模式
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站