博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
优雅的格式化时间显示
阅读量:6555 次
发布时间:2019-06-24

本文共 1627 字,大约阅读时间需要 5 分钟。

在像评论列表这样的前端页面中,经常会出现时间的字段,如果显示一个标准的yyyy-MM-dd HH:mm:ss这样的时间格式,显然不是很友好,通常产品会要求显示 [1分钟前]、[刚刚] 类似的文字,那么怎么用js实现呢?我这里封装了一个通用的函数以实现,贴出完整代码:

//时间格式化function getDateDiff(date){    if(typeof date === 'string'){        date = new Date(Date.parse(date.replace(/-/g, "/")));    }else if(typeof date === 'object'){        date = date.getTime();    }    var result = '',        differentValue = new Date().getTime() - date;    if(differentValue < 0) {        return '穿越时空'    }    var minute = 1000 * 60,        hour = minute * 60,        day = hour * 24,        week = day * 7,        month = day * 30,//且都用30天算        year = month * 12;    if(differentValue / year >= 1){        result = parseInt(differentValue / year) + "年前"    }else if(differentValue / month >= 1){        result = parseInt(differentValue / month) + "月前"    }else if(differentValue / week >= 1){        result = parseInt(differentValue / week) + "周前"    }else if(differentValue / day >= 1){        result = parseInt(differentValue / day) + "天前"    }else if(differentValue / hour >= 1){        result = parseInt(differentValue / hour) + "小时前"    }else if(differentValue / minute >= 1){        result = parseInt(differentValue / minute) + "分钟前"    }else{        result = "刚刚";      }    return result;}console.log(getDateDiff('2017-06-21 20:16:24'))console.log(getDateDiff(parseInt('1497183384000')))console.log(getDateDiff(1497183384000))console.log(getDateDiff(new Date('2011-01-11 20:16:24')))console.log(getDateDiff(new Date('2017-07-14 11:43:24')))console.log(getDateDiff(new Date('2017-07-14 20:16:24')))

控制台输出如图

834823-20170714141612275-1741558558.png

转载于:https://www.cnblogs.com/liliangel/p/7170091.html

你可能感兴趣的文章
HDU-1087 Super Jumping! Jumping! Jumping!
查看>>
numpy数组及处理:效率对比
查看>>
composer出现Invalid credentials for ‘https://packagist.phpcomposer.com/packages.json’的错误
查看>>
常用搜索指令
查看>>
ViewPager实现引导页
查看>>
使用XSLT生成Nunit测试报告
查看>>
[分类算法] :朴素贝叶斯 NaiveBayes
查看>>
optional的使用
查看>>
如何恢复误删除的Linux文件
查看>>
重置CentOS6.5的登录口令
查看>>
DES加密
查看>>
SQL-51 查找字符串'10,A,B' 中逗号','出现的次数cnt。
查看>>
Android Apk 瘦身大法
查看>>
Python线程event
查看>>
编译内核开始的小问题Unable to find the Ncurses libraries
查看>>
C# 编程数据结构学习笔记 2
查看>>
初识C++有感
查看>>
python---------------递归函数
查看>>
Getting start with dbus in systemd (03) - sd-bus.h 使用例子 (systemd version>=221)
查看>>
排序四:归并排序--分治法
查看>>