格式化时间插件

FormatDate

使用方法:
通过传递参数,控制日期的显示样式,还可以单独获得 年、月、日、周、时(12小时制和24小时制)、分、秒。
  
  Format.date()                     
  // 2017 07 04 星期二
  
  Format.date('YYYYMMDDhhmmss)  
  // 20170704174245

  Format.date('YYYY/MM/DD')    
  // 2017/07/04

  Format.date('YYYY/MM/DD WW')      
  // 2017/07/04 星期二

  Format.date('YYYY/MM/DD WW hh:mm:ss',24)  
  // 2017/07/04 星期二 17:42:45

  Format.date('YYYY-MM-DD')        
  // 2017-07-04

  Format.date('YYYY-MM-DD WW')      
  // 2017-07-04 星期二

  Format.date('YYYY-MM-DD WW hh:mm:ss')  
  // 2017-07-04 星期二 05:42:45

  Format.date('YYYY年MM月DD日')     
  // 2017年07月04日

  Format.date('YYYY年MM月DD日 WW')  
  // 2017年07月04日 星期二

  Format.date('YYYY年MM月DD日 WW hh时mm分ss秒',24)  
  // 2017年07月04日 星期二 17:42:45

  Format.date('YYYY')  
  // 2017

  Format.date('MM')  
  // 7

  Format.date('DD')  
  // 4

  Format.date('WW')  
  // 星期二

  Format.date('hh',24)  
  // 17

  Format.date('mm')  
  // 09

  Format.date('ss')  
  // 45


插件:
;(function (global){
    var Format = {
        date :function(){
            var now = new Date();
            var year = now.getFullYear();
            var month = now.getMonth()+1;
            var day = now.getDate();
            var week = now.getDay();
            var hour = now.getHours();
            var min = now.getMinutes();
            var sec = now.getSeconds();
            var weekArr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
            //处理个位数
            month = month < 10 ? "0" + month : month;
            day = day < 10 ? "0" + day : day;
            min = min < 10 ? "0" + min : min;
            sec = sec < 10 ? "0" + sec : sec;
            //如果只有一个参数的时候,用12小时表示 
            if(arguments.length == 1){
                if(hour > 12){
                    hour -= 12;
                }
                hour = hour < 10 ? "0" + hour : hour;
            }else if(arguments.length == 2 && arguments[1] == 24){
                hour = hour < 10 ? "0" + hour : hour;
            }
            //根据参数返回值
            switch (arguments[0]) {
                case undefined:
                    return year +' '+ month  +' '+day +' '+ weekArr[week];;
                    break;
                case "YYYY/MM/DD":
                    return year +'/'+ month  +'/'+day;
                    break;
                case "YYYY/MM/DD WW":
                    return year +'/'+ month  +'/'+day +' '+weekArr[week];
                    break;
                case "YYYY/MM/DD WW hh:mm:ss":
                    return year +'/'+ month  +'/'+day +' '+weekArr[week] +' '+ hour + ':' + min + ':' + sec;
                    break;
                case "YYYY-MM-DD":
                    return year +'-'+ month  +'-'+day;
                    break;
                case "YYYY-MM-DD WW":
                    return year +'-'+ month  +'-'+day +' '+weekArr[week];
                    break;
                case "YYYY-MM-DD WW hh:mm:ss":
                    return year +'-'+ month  +'-'+day +' '+weekArr[week] +' '+ hour + ':' + min + ':' + sec;
                    break;
                case "YYYY年MM月DD日":
                    return year +'年'+ month  +'月'+day +'日'
                    break;
                case "YYYY年MM月DD日 WW":
                    return year +'年'+ month  +'月'+day +'日' +' '+weekArr[week];
                    break;
                case "YYYY年MM月DD日 WW hh时mm分ss秒":
                    return year +'年'+ month  +'月'+day +'日' +' '+weekArr[week] +' '+ hour + '时' + min + '分' + sec + '秒';
                    break;
                case "YYYYMMDDHHMMSS":
                    return year + month +day + hour + min + sec ;
                    break;
                case "YYYY":
                    return year;
                    break;
                case "MM":
                    return month;
                    break;
                case "DD":
                    return day;
                    break;
                case "WW":
                    return weekArr[week];
                    break;
                case "hh":
                    return hour;
                    break;
                case "mm":
                    return min;
                    break;
                case "ss":
                    return sec;
                    break;
            }
        }
    }
    
    global.Format = Format;
})(window)
posted @ 2017-07-17 15:52  rainbow8590  阅读(200)  评论(0编辑  收藏  举报