js计算时间跨度

这篇博客介绍了一个JavaScript函数`timeAgo`,它用于计算并展示从当前时间到指定时间戳的时间差,如'1 minute ago'或'2 hours ago'。函数`pluralize`确保了单位在适当的情况下添加's',例如'minutes'。博客内容主要涉及前端开发中的时间格式化和字符串处理技巧。
摘要由CSDN通过智能技术生成

1.在评论类需求会遇到 几分钟,几小时,几天前评论 0和1单位不加s,大于1加s显示复数:minutes

function pluralize(time, label) { // 时间戳以秒算, 分钟,小时,天数
    if (time === 1) {
        return time + label
    }
    return time + label + 's'
}

export function timeAgo(time) {
    const between = Date.now() / 1000 - Number(time)
    if (between < 3600) {
        return pluralize(~~(between / 60), ' minute')  // ~~ 运算符 把非数字类型转为数字类型 ~~123 == 123 是不变的
    } else if (between < 86400) {
        return pluralize(~~(between / 3600), ' hour')
    } else {
        return pluralize(~~(between / 86400), ' day')
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值