时间格式化输出
题目:
输入:formatDate(new Date(1409894060000), ‘yyyy-MM-dd HH:mm:ss 星期w’)
输出:2014-09-05 13:14:20 星期五
解答:
function formatDate(date, format) {
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
var week = ['日', '一', '二', '三', '四', '五', '六'];
var _day = date.getDay();
return format.replace(/yyyy/, year)
.replace(/yy/, year % 100 > 9 ? year % 100 : '0' + year % 100)
.replace(/MM/, month > 9 ? month : '0' + month)
.replace(/M/, month)
.replace(/dd/, day > 9 ? day : '0' + day)
.replace(/d/, day)
.replace(/HH/, hour > 9 ? hour : '0' + hour)
.replace(/H/, hour)
.replace(/hh/, hour % 12 > 9 ? hour : '0' + hour)
.replace(/h/, hour % 12)
.replace(/mm/, min > 9 ? min : '0' + min)
.replace(/m/, min)
.replace(/ss/, sec > 9 ? sec : '0' + sec)
.replace(/s/, sec)
.replace(/w/, week[_day]);
}
输入:formatDate(new Date(), ‘yyyy-MM-dd HH:mm:ss’)
输出:2014-09-05 13:14:20 星期五
function formatDate(date, format) {
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
var week = ['日', '一', '二', '三', '四', '五', '六'];
var _day = date.getDay();
return format.replace(/yyyy/, year)
.replace(/yy/, year % 100 > 9 ? year % 100 : '0' + year % 100)
.replace(/MM/, month > 9 ? month : '0' + month)
.replace(/M/, month)
.replace(/dd/, day > 9 ? day : '0' + day)
.replace(/d/, day)
.replace(/HH/, hour > 9 ? hour : '0' + hour)
.replace(/H/, hour)
.replace(/hh/, hour % 12 > 9 ? hour : '0' + hour)
.replace(/h/, hour % 12)
.replace(/mm/, min > 9 ? min : '0' + min)
.replace(/m/, min)
.replace(/ss/, sec > 9 ? sec : '0' + sec)
.replace(/s/, sec)+' 星期'+ week[_day];
}
获取时间戳的方式
1. Date.now()
2. new Date().getTime()
知识点:日期时间的获取、replace()方法