在前端开发中,后端有时候传过来的数据为时间戳的格式 而我们又需要将其转换为时间格式来回显。所以需要一个可以转换时间戳的工具。
封装函数
构建一个函数,传入我们的时间戳和我们想要的时间格式,通过JavaScript的时间对象方法,将其转换为我们想要的时间格式,再通过字符串的拼接方法结合我们的参数进行字符串的拼接,得到想要的结果。
function formatTimestampToDateString(timestamp, format = 'YYYY-MM-DD HH:mm:ss') {
const date = new Date(timestamp);
const year = date.getFullYear();
const month = date.getMonth() + 1;
const day = date.getDate();
const hours = date.getHours();
const minutes = date.getMinutes();
const seconds = date.getSeconds();
const formattedDate = format
.replace('YYYY', year)
.replace('MM', addZero(month))
.replace('DD', addZero(day))
.replace('HH', addZero(hours))
.replace('mm', addZero(minutes))
.replace('ss', addZero(seconds));
return formattedDate;
}
function addZero(number) {
return number < 10 ? '0' + number : number;
}
函数接收两个参数 时间戳 和 格式字符串
格式字符串 通常为 YYYY-MM-DD HH:mm:ss 或者 YYYY-MM-DD
当然也可以改为YYYY年MM月DD日 HH时mm分ss秒
这取决于你的需求或者你喜欢哪种
效果展示
const time = 1600000000000;
const formattedTime = formatTimestampToDateString(time,"YYYY-MM-DD HH:mm:ss");
const formattedTime1 = formatTimestampToDateString(time,"YYYY年MM月DD日 HH时mm分ss秒");
const formattedTime2 = formatTimestampToDateString(time,"YYYY-MM-DD");
const formattedTime3 = formatTimestampToDateString(time,"YYYY年MM月DD日");
console.log(formattedTime,"YYYY-MM-DD HH:mm:ss")
console.log(formattedTime1,"YYYY年MM月DD日 HH时mm分ss秒")
console.log(formattedTime2,"YYYY-MM-DD")
console.log(formattedTime3,"YYYY年MM月DD日")