前言
后端传来的数据是秒数,前端展示为将秒数转换为年月日时分秒,由于不想使用第三方包,
遂自己写个函数实现,记录一下
效果图
代码片段(复制即可)
function formatTime(secondVal) {
let YearSeconds = 31536000;
let years = Math.floor(secondVal / YearSeconds);
let remainingSeconds = secondVal % YearSeconds;
let months = Math.floor(remainingSeconds / (30 * 24 * 60 * 60));
let days = Math.floor((remainingSeconds % (30 * 24 * 60 * 60)) / (24 * 60 * 60));
let hours = Math.floor((remainingSeconds % (24 * 60 * 60)) / (60 * 60));
let minutes = Math.floor((remainingSeconds % (60 * 60)) / 60);
let secondsVal = remainingSeconds % 60;
return { years, months, days, hours, minutes, seconds: secondsVal };
}
function Timestamp(row) {
const valueData = formatTime(row);
let result = ""
if (valueData.years > 0) {
result += valueData.years + "年"
}
if (valueData.months > 0) {
result += valueData.months + "月"
}
if (valueData.days > 0) {
result += valueData.days + "天"
}
if (valueData.hours > 0) {
result += valueData.hours + "小时"
}
if (valueData.minutes > 0) {
result += valueData.minutes + "分"
}
if (valueData.seconds > 0) {
result += valueData.seconds + "秒"
}
return result
}
console.log(Timestamp(1700));