在前端开发中,后端有时候传过来的数据为时间戳的格式 而我们又需要将其转换为时间格式来回显。所以需要一个可以转换时间戳的工具。
封装函数
构建一个函数,传入我们的时间戳和我们想要的时间格式,通过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日")