js实现用户评论时间与当前时间对比,显示"n分钟前","n小时前",以及具体日期的效果

这里需要用到moment.js插件

官网:Moment.js 中文网 (momentjs.cn)

我这里将插件的实例挂载到了this.$moment上

 

复制代码
                let initTime = e.createTime // 格式 2022-12-12 12:30:51
                // let a = this.$moment().diff(this.$moment('2023/1/5 20:15:00'));
                let a = this.$moment().diff(this.$moment(e.createTime));
                // 只换算到小时
                const T = ['秒', '分钟', '小时']
                const t = [1000, 60, 60]
                console.log('换算前', a)
                
                for (var i = 0; i < t.length; i++) {
                    if (parseInt(a/t[i])) {
                        a = parseInt(a/t[i])
                        e.createTime = a + T[i] + '前'
                        // 创建日期与当前日期进行对比,相差小于一天则显示n分钟前,n小时前,大于一天直接显示日期
                        if(T[i] == "小时" && a > 24) {
                            e.createTime = initTime.split(' ')[0]
                        }
                    }
                }
                console.log('换算后', e.createTime)
复制代码

 

posted @   fnasklf  阅读(285)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示