标题
按所给的时间格式输出指定的时间
格式说明
对于 2014.09.05 13:14:20
yyyy: 年份,2014
yy: 年份,14
MM: 月份,补满两位,09
M: 月份, 9
dd: 日期,补满两位,05
d: 日期, 5
HH: 24制小时,补满两位,13
H: 24制小时,13
hh: 12制小时,补满两位,01
h: 12制小时,1
mm: 分钟,补满两位,14
m: 分钟,14
ss: 秒,补满两位,20
s: 秒,20
w: 星期,为 ['日', '一', '二', '三', '四', '五', '六'] 中的某一个,本 demo 结果为 五
示例1
输入:
formatDate(new Date(1409894060000), 'yyyy-MM-dd HH:mm:ss 星期w')输出:
2014-09-05 13:14:20 星期五
代码
function formatDate(date, str) {
function add0(str) {
if (str < 10) return '0' + str
else return str
}
const week = ['日', '一', '二', '三', '四', '五', '六']
let tmp = {
yyyy: date.getFullYear(),
yy: date.getFullYear() % 100,
MM: add0(date.getMonth()+1),
M: date.getMonth()+1,
dd: add0(date.getDate()),
d: date.getDate(),
HH: add0(date.getHours()),
H: date.getHours(),
hh: add0(date.getHours() % 12),
h: date.getHours() % 12,
mm: add0(date.getMinutes()),
m: date.getMinutes(),
ss: add0(date.getSeconds()),
s: date.getSeconds(),
w: week[date.getDay()]
}
for (let item in tmp) {
str = str.replace(item, tmp[item])
}
return str
}
注意:月份要加一
知识点: