js定义一个函数,根据时间间隔,返回字符串。参数为代表时间的字符串,返回值为包含“刚刚、分钟前、小时前、天前、年前、月前“等字符
时间: 2024-02-02 17:02:34 浏览: 75
mysql常用函数实例总结【聚集函数、字符串、数值、时间日期处理等】
的字符串。
示例代码:
```javascript
function getTimeString(timeStr) {
const now = new Date();
const time = new Date(timeStr);
const diff = now - time;
const minute = 60 * 1000;
const hour = 60 * minute;
const day = 24 * hour;
const month = 30 * day;
const year = 12 * month;
if (diff < minute) {
return '刚刚';
} else if (diff < hour) {
return `${Math.floor(diff / minute)}分钟前`;
} else if (diff < day) {
return `${Math.floor(diff / hour)}小时前`;
} else if (diff < month) {
return `${Math.floor(diff / day)}天前`;
} else if (diff < year) {
return `${Math.floor(diff / month)}月前`;
} else {
return `${Math.floor(diff / year)}年前`;
}
}
console.log(getTimeString('2021-08-01T10:12:00')); // 4天前
console.log(getTimeString('2021-08-05T09:30:00')); // 1小时前
console.log(getTimeString('2021-08-06T18:00:00')); // 刚刚
```
上面的代码中,我们首先获取当前时间和传入的时间,然后计算它们之间的时间差。然后根据时间差的大小,返回对应的字符串。注意,我们使用了 `Math.floor` 函数来向下取整,以得到更加精确的时间间隔。
阅读全文