function formatDate(date, format) {
  let formatArr = [];
  format.replace(/\w+|:|\s|-|星期/g, function (text) {
    text && formatArr.push(text)
  })
  const weekday = ['日', '一', '二', '三', '四', '五', '六'];
  const map = {
    'yyyy': date.getFullYear(),
    'yy': date.getFullYear() % 100,
    'MM': date.getMonth() + 1 >= 10 ? date.getMonth() + 1 : "0" + (date.getMonth() + 1),
    'M': date.getMonth() + 1,
    'dd': date.getDate() >= 10 ? date.getDate() : "0" + date.getDate(),
    'd': date.getDate(),
    'HH': date.getHours() >= 10 ? date.getHours() : "0" + date.getHours(),
    'H': date.getHours(),
    'hh': (date.getHours() % 12) >= 10 ? (date.getHours() % 12) : "0" + (date.getHours() % 12),
    'h': (date.getHours() % 12),
    'mm': date.getMinutes() >= 10 ? date.getMinutes() : "0" + date.getMinutes(),
    'm': date.getMinutes(),
    'ss': date.getSeconds() >= 10 ? date.getSeconds() : "0" + date.getSeconds(),
    's': date.getSeconds(),
    'w': weekday[date.getDay()]
  };

  return formatArr.map(item => {
    if (map[item]) {
      return map[item]
    }
    return item
  }).join("")
}