1 function formatDate(date, fmt) { 2 if (/(y+)/.test(fmt)) { 3 fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length)); 4 } 5 let o = { 6 'M+': date.getMonth() + 1, 7 'd+': date.getDate(), 8 'h+': date.getHours(), 9 'm+': date.getMinutes(), 10 's+': date.getSeconds() 11 }; 12 for (let k in o) { 13 if (new RegExp(`(${k})`).test(fmt)) { 14 let str = o[k] + ''; 15 fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str)); 16 } 17 } 18 return fmt; 19 } 20 21 // 左边加上零 22 function padLeftZero(str) { 23 return ('00' + str).substr(str.length); 24 } 25 26 var date = 1496486118238; 27 var newDate = new Date(date); 28 formatDate(newDate, 'yyyy-MM-dd hh:mm'); // 2017-06-03 18:35