题解 | #时间格式化输出#
时间格式化输出
https://www.nowcoder.com/practice/a789783e7c984f10a0bf649f6d4e2d59
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("")
}