format/index.js

/**
 * 功能:当前时间
 * @param {number|string} date - new Date()的实例化对象或毫秒的时间戳
 * @param {string} fmt - 规则 string “yyyy-MM-dd hh:mm:ss.S”  y: 年、M:月、d:日、h:小时、m:分钟、s:秒、S:分秒
 * @returns {string} -深拷贝对象或数组
 */
function format(date, fmt) {
    var o = {
      "M+": date.getMonth() + 1, //月份
      "d+": date.getDate(), //日
      "h+": date.getHours(), //小时
      "m+": date.getMinutes(), //分
      "s+": date.getSeconds(), //秒
      "q+": Math.floor((date.getMonth() + 3) / 3), //季度
      S: date.getMilliseconds(), //毫秒
    };
    if (/(y+)/.test(fmt)) {
      fmt = fmt.replace(
        RegExp.$1,
        (date.getFullYear() + "").substr(4 - RegExp.$1.length)
      );
    }
    for (var k in o) {
      if (new RegExp("(" + k + ")").test(fmt)) {
        fmt = fmt.replace(
          RegExp.$1,
          RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)
        );
      }
    }
    return fmt;
  }
  export default format;