zoukankan      html  css  js  c++  java
  • Angularjs中比较实用的DateFormat库

    angular.module('newApp')
      .factory('dateUtil', function() {
        var symbolMap = {
          'MM': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getMonth();
            }
            return date.getMonth() + 1;
          },
          'mm': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getMinutes();
            }
            return date.getMinutes();
          },
          'YY': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getFullYear();
            }
            return date.getFullYear();
          },
          'ss': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getSeconds();
            }
            return date.getSeconds();
          },
          'hh': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getHours();
            }
            return date.getHours();
          },
          'dd': function(date) {
            if (typeof(date) === 'string') {
              var d = new Date(date);
              return d.getDate();
            }
            return date.getDate();
          }
        };
    
        function _makeNchar(char, n) {
          var str = [];
          while (n--) {
            str.push(char);
          }
          return str.join('');
        }
    
        function alignNumber(num, len, char) {
          num = num + '';
          if (num.length > len) {
            return num;
          } else {
            return _makeNchar(char, len - num.length) + num;
          }
        }
    
        function getRelativeDate(offset, date) {
          var relativeDate = new Date(date),
            dateValue = relativeDate.getDate() + offset;
          relativeDate.setDate(dateValue);
          return relativeDate;
        }return {
          format: function(date, fmtStr) {
            if (fmtStr) {
              return fmtStr.replace((/(MM|mm|YY|ss|hh|dd)/g), function(s) {
                return alignNumber(symbolMap[s](date), 2, '0');
              });
            }
          },
          getRelativeDate: getRelativeDate
        };
      });
  • 相关阅读:
    AJAX
    选择器
    断电原则
    radio为什么不能选择。急急急
    IBase<T>
    委托
    Log4Net
    博弈论 学习笔记
    解决You have new mail in /var/spool/mail/root提示
    Zookeeper分布式安装部署
  • 原文地址:https://www.cnblogs.com/ccblogs/p/5266489.html
Copyright © 2011-2022 走看看