常见的评论或者朋友圈都能看到的发送时间是刚刚,几分钟前,几小时前,所以在做评论模块的时候也想进行这样的转换,其实转换的方法也挺简单的,就是获取到评论发送的时间戳和当前的时间戳进行对比,然后在除分、时、天、周、月所对应的时间戳,就能得到我们想要的效果了

      /*** dateTimeStamp是评论的发送时间   2020-01-12 20:10:15 这样的形式* @param dateTimeStamp* @returns {string}*/timeAgo(dateTimeStamp) {let result = "";let minute = 1000 * 60;      //把分,时,天,周,半个月,一个月用毫秒表示let hour = minute * 60;let day = hour * 24;let week = day * 7;let halfamonth = day * 15;let month = day * 30;let now = new Date().getTime();   //获取当前时间毫秒dateTimeStamp = dateTimeStamp.substring(0, 18);//必须把日期'-'转为'/'dateTimeStamp = dateTimeStamp.replace(/-/g, '/');let timestamp = new Date(dateTimeStamp).getTime();let diffValue = now - timestamp;//时间差if (diffValue < 0) {return result;}let minC = diffValue / minute;  //计算时间差的分,时,天,周,月let hourC = diffValue / hour;let dayC = diffValue / day;let weekC = diffValue / week;let monthC = diffValue / month;if (monthC >= 1 && monthC <= 3) {result = " " + parseInt(monthC) + "月前"} else if (weekC >= 1 && weekC <= 3) {result = " " + parseInt(weekC) + "周前"} else if (dayC >= 1 && dayC <= 6) {result = " " + parseInt(dayC) + "天前"} else if (hourC >= 1 && hourC <= 23) {result = " " + parseInt(hourC) + "小时前"} else if (minC >= 1 && minC <= 59) {result = " " + parseInt(minC) + "分钟前"} else if (diffValue >= 0 && diffValue <= minute) {result = "刚刚"} else {let datetime = new Date();datetime.setTime(dateTimeStamp);let Nyear = datetime.getFullYear();let Nmonth = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1;let Ndate = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate();let Nhour = datetime.getHours() < 10 ? "0" + datetime.getHours() : datetime.getHours();let Nminute = datetime.getMinutes() < 10 ? "0" + datetime.getMinutes() : datetime.getMinutes();let Nsecond = datetime.getSeconds() < 10 ? "0" + datetime.getSeconds() : datetime.getSeconds();result = Nyear + "-" + Nmonth + "-" + Ndate}return result;},

js实现评论、回复消息显示刚刚,几分钟前,几小时前。相关推荐

  1. 使用day.js让时间 (显示为几分钟前 几小时前 几天前 几个月前 )

    效果图 代码 utils.ts 通过引入utils.ts import dayjs from 'dayjs'; import 'dayjs/locale/zh-cn'; import relative ...

  2. PHP人性化时间显示,实现多少秒前,多少分钟前,多少小时前

    现在很多网站的时间显示都很人性化,不再是单纯的年月日时分秒,而是根据数据更新的时间与当前时间进行比较,实现多少秒前,多少分钟前,多少小时前! //人性化时间显示 function formatTime ...

  3. 根据时间戳显示刚刚/几分钟前/几小时前/今天等等

    规则是: 一分钟内显示刚刚 一小时内显示几分钟前 24小时内显示今天几点几分 24 - 48小时内显示昨天几点几分 一年内显示几月几日 一年前显示 年-月-日 function timestampFo ...

  4. 小程序--时间处理(显示几分钟前,,几小时前,,几天前...)

    效果图  (通过js实现对时间处理); 这是时间处理的函数, 代码注释说明的也还清楚,   这是文件链接,可以直接打开,保存一下 https://blog-static.cnblogs.com/fil ...

  5. JS 时间转化为几分钟前 几小时前 几天前

    背景:最近公司要做动态列表,类似于微信朋友圈.动态创建时间就需要显示为 刚刚.几分钟前.几小时前.几天前.2018-05-15,这样的形式. 代码如下 var minute = 1000 * 60;v ...

  6. php+判断时间是昨天,用php判断时间戳来输出刚刚,分钟前,小时前昨天和时间...

    function T($time) { //获取今天凌晨的时间戳 $day = strtotime(date('Y-m-d',time())); //获取昨天凌晨的时间戳 $pday = strtot ...

  7. php 明天凌晨,用php判断时间戳来输出刚刚,分钟前,小时前昨天和时间

    function T($time) { //获取今天凌晨的时间戳 $day = strtotime(date('Y-m-d',time())); //获取昨天凌晨的时间戳 $pday = strtot ...

  8. php文件不写结尾,php文件结尾不写?的好处有哪...-php判断两个日期相差天数的实...-php根据时间显示刚刚,几分钟前,几小时前的实现代码_169IT.COM...

    在分析网站日志时,经常需要取某段时间内的日期,以下的代码,可以判断两个日期相隔的天数.年数或月数. 代码如下: /* * function:计算两个日期相隔多少年,多少月,多少天 * param st ...

  9. 使用 vue filters过滤器直接显示 几分钟前 几小时前 几天前

    这个没什么好多的   直接上代码↓↓↓↓↓↓↓↓↓ filters:{dateFilter(ele){ //ele是之前记录的时间 var lr =new Date(ele); var now =ne ...

最新文章

  1. [LeetCode] 130. Surrounded Regions Java
  2. pythonflask configlist.py_flask源码阅读系列一config模块
  3. Apache Spark 1.5新特性介绍
  4. svn 建子项目的方法
  5. java get image获取根路径_Java 获取资源文件路径
  6. 娄底二中高考2021成绩查询,2021年娄底高考状元名单公布,娄底高考状元学校资料及最高分...
  7. 2015年传智播客JavaEE 第168期就业班视频教程day38-SSH综合案例-1
  8. 跳槽,成为程序员晋升与成长的唯一手段?
  9. 图片横向滚动,两边有按钮控制
  10. 菜鸟学python-基础(2)
  11. 可做fft分析吗_2020速卖通还要做吗?速卖通2020年市场分析!
  12. 龙之谷冰龙linux手工服务端,【网游】【龙之谷】v300冰龙巢穴一键服务端+客户端+GM工具+视频教程...
  13. ERP学习 之 财务管理
  14. php本地如何开启websocket遇到的坑
  15. 基于vue.js 编写的简单的文件管理器的demo
  16. Bugku CTF 每日一题 旋转跳跃 BUUCTF 九连环
  17. 软件生命周期是什么?
  18. SubShader中的LOD
  19. am335x linux内核烧写_am335x文件系统烧写问题
  20. GateWay 服务网关

热门文章

  1. Android获取IME,IMSI等各种手机信息,并对号码组成详解
  2. 数据被误删了,着急恢复就这样干!
  3. kitematic利用docker下载mysql的镜像
  4. mysql5.7 实体视图_MYSQL数据库学习七 视图的操作
  5. java通过属性名获取属性值_java反射机制根据属性名获取属性值的操作
  6. ccsu 1630卧底 并查集
  7. XMPP 403错误解决办法
  8. Nginx配置站点适配PC和手机
  9. win10浏览器加载很慢_win10系统打开网页慢怎么回事|win10系统打开网页速度慢的解决方法...
  10. 互联网行业海外ChatGPT专题:ChatGPT风口已至,商业化落地加速