// 格式化:50分钟前,1小时前.20天前 export const getTimeAgo = (timestamp) => { const now = Date.now(); const diff = now - new Date(timestamp); // 计算时间差的毫秒数 const milliseconds = Math.abs(diff); // 定义时间单位与对应的毫秒数 const timeUnits = [ { unit: '年', ms: 1000 * 60 * 60 * 24 * 365 }, { unit: '个月', ms: 1000 * 60 * 60 * 24 * 30 }, { unit: '周', ms: 1000 * 60 * 60 * 24 * 7 }, { unit: '天', ms: 1000 * 60 * 60 * 24 }, { unit: '小时', ms: 1000 * 60 * 60 }, { unit: '分钟', ms: 1000 * 60 }, ]; let str = '' // 循环遍历时间单位,并计算时间差所对应的单位 for (let i = 0; i < timeUnits.length; i++) { const { unit, ms } = timeUnits[i]; if (milliseconds >= ms) { const count = Math.floor(milliseconds / ms); str = `${count}${unit}前`; break; } } // 如果时间差过小,可以自定义返回结果 return str||'刚刚'; }