码迷,mamicode.com
首页 > 编程语言 > 详细

javascript设计模式--单例模式

时间:2016-05-13 04:33:49      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

单例模式:只允许实例化一次的对象类
这种在基本的编程中可能已经经常的用到,只是不知道是单例模式,就是将方法和属性封装到一个对象里。
比如config.js文件,service.js里都会经常用到:

app.factory(‘payInfo‘, function($location) {
  // Might use a resource here that returns a JSON array
  return {
    getStatusMsg:function(Paystatus){
      switch(Paystatus){
        case 0:
          return "支付成功!";
        case 1:
          return "支付失败!";
        case 2:
          return "取消支付!";
      }
    },
    getPayType:function(type){
      switch(type){
        case ‘ticket‘:
          return 0;
        case ‘red‘:
          return 1;
        case ‘recharge‘:
          return 2;
      }
    },
    getHasPasswordFlag:function(){
      return 1;
    },
    getHasRedFlag:function(){
      return 1;
    },
    getPayPathType:function(type){
      switch(type){
        case ‘account‘:
          return ‘/paymentAccount.html‘;
        case ‘red‘:
          return ‘/paymentRed.html‘;
      }
    },
    getAccountTypeId:function(type){
      switch(type){
        case ‘UnionPay‘:
          return 3;
        case ‘Account‘:
          return 1;
        case ‘LianLian‘:
          return 6;
      }
    },
    clearSuccessLocalStrorage:function(){
        localStorage.removeItem(‘paySuccessContent‘);
        localStorage.removeItem(‘paySuccessContentSecond‘);
    },
    getPaySuccessUrl:function(){
      return ‘×××?‘+$location.url().split(‘?‘)[1];
    }
  }
})
.factory(‘Request‘,function($http){
  return{
    sendRequest:function(form_data,successCallBack,exCallBack){
      console.log(form_data);
      var req = {
        method: ‘POST‘,
        url: ‘××ב,
        data: form_data
      }
      $http(req).then(function(response_data){
        successCallBack(response_data);
      }, function(response_ex){
        exCallBack(response_ex);
      });
    }
  }
})
.factory(‘DECODE‘,function(){
  return{
    base:function(decodeurl){
      for(var key in decodeurl){  
        decodeurl[key] = window.atob(decodeurl[key]);
      }
    }
  }
})

javascript设计模式--单例模式

标签:

原文地址:http://blog.csdn.net/sinat_29843547/article/details/51337082

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!