本文介绍如何使用 ES6 语法将 JavaScript 时间戳转换为 yyyy-MM-dd hh:mm 格式。通过创建 Date 对象并编写 formatDate 函数,利用正则表达式匹配格式字符串中的占位符,实现年月日时分秒的精确格式化输出,适用于前端开发中的日期显示需求。
JavaScript ES6 时间戳转换实现
具体实现代码如下所示:
function formatDate(date,fmt) {
if(/(y+)/.test(fmt)){
fmt = fmt.replace(RegExp.$1,(date.getFullYear()+'').substr(4-RegExp.$1.length));
}
let o = {
'M+':date.getMonth() + 1,
'd+':date.getDate(),
'h+':date.getHours(),
'm+':date.getMinutes(),
's+':date.getSeconds()
};
// 遍历这个对象
for(let k in o){
if(new RegExp(`(${k})`).test(fmt)){
// console.log(`${k}`)
console.log(RegExp.$1)
let str = o[k] + '';
fmt = fmt.replace(RegExp.$1,(RegExp.$1.length===1)?str:padLeftZero(str));
}
}
return fmt;
};
function padLeftZero(str) {
return ('00'+str).substr(str.length);
}
首先获取当前时间戳并乘以 1000 转换为毫秒,然后创建 Date 对象: let TimeNow = 1514374627*1000 let newTime = new Date(TimeNow)
调用 formatDate 函数,传入 Date 对象和格式字符串 'yyyy-MM-dd hh:mm',即可得到格式化后的时间字符串,例如:2017-12-27 19:37。
以上即为使用 JavaScript ES6 语法将时间戳转换为 yyyy-MM-dd hh:mm 格式的完整方法,供开发者参考使用。