单例&多例 模式

只有一个登录用户

var LoginUser = function(){
  var instance;
  var name;

  function LoginUser(name) {
    this.name = name;
  }
  LoginUser.prototype.getName = function() {
    return this.name;
  }
  LoginUser.prototype.setName = function(name) {
    this.name = name;
  }
  return {
    getInstance: function() {
      if (!instance) instance = new LoginUser();
      return instance;
    }
  }
}();

只有三个登录用户

var LoginUser = function(){
  var instance = [];
  var count = 0;
  var name;

  function LoginUser(name) {
    this.name = name;
  }
  LoginUser.prototype.getName = function() {
    return this.name;
  }
  LoginUser.prototype.setName = function(name) {
    this.name = name;
  }
  return {
    getInstance: function() {
      
      if (instance.length < 3) {
        var user = new LoginUser();
        instance.push(user);
        return user;
      }
      return instance[count++ % 3];
    }
  }
}();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容