function formatDate(date, format) {
    
  function formatData(data) {
  return data >= 10 ? data : ('0' + data);
  }
    
  let arr = ['日', '一', '二', '三', '四', '五', '六'];
  let yyyy, yy, M, d, H, h, m, s, w;
  yyyy = date.getFullYear();
  M = date.getMonth() + 1;
  d = date.getDate(); 
  H = date.getHours();
  h = H % 12;
  m = date.getMinutes();
  s = date.getSeconds();
  w = arr[date.getDay()]
    
 
  let obj = {
    'yyyy': yyyy,
    'yy': yyyy % 100,
    'MM': formatData(M),      
    'M': M,
    'dd': formatData(d),      
    'd': d,
    'HH': formatData(H),
    'H': H,
    'hh': formatData(h),
    'h': h,
    'mm': formatData(m),
    'm': m,
    'ss': formatData(s),
    's': s,
    'w': w
  }
  
  for (let item in obj) {
      format = format.replace(item, obj[item]);
  }
  return format;
}