JS根据Unix时间戳显示发布时间是多久前【项目实测】


Posted in Javascript onJuly 10, 2019

后台接口给的时间数据为Unix时间戳,我们的需求是显示类似微信朋友圈显示发布时间为距离当前时间多久之前,“xx分钟之前”,“xx小时之前”,“xx个月之前”。

类似这样的时间显示效果:

JS根据Unix时间戳显示发布时间是多久前【项目实测】

转换函数:

/**
 * Unix时间戳转换为当前时间多久之前
 * @param timespan int     Unix时间戳
 * @return timeSpanStr string   转换之后的前台需要的字符串
 */
function Ftime (timespan) {
  var dateTime = new Date(timespan * 1000);
  var year = dateTime.getFullYear();
  var month = dateTime.getMonth() + 1;
  var day = dateTime.getDate();
  var hour = dateTime.getHours();
  var minute = dateTime.getMinutes();
  //当前时间
  var now = Date.parse(new Date()); //typescript转换写法
  var milliseconds = 0;
  var timeSpanStr;
  //计算时间差
  milliseconds = (now / 1000) - timespan;

  //一分钟以内
  if (milliseconds <= 60) {
    timeSpanStr = '刚刚';
  }
  //大于一分钟小于一小时
  else if (60 < milliseconds && milliseconds <= 60 * 60) {
    timeSpanStr = Math.ceil((milliseconds / (60))) + '分钟前';
  }
  //大于一小时小于等于一天
  else if (60 * 60 < milliseconds && milliseconds <= 60 * 60 * 24) {
    timeSpanStr = Math.ceil(milliseconds / (60 * 60)) + '小时前';
  }
  //大于一天小于等于15天
  else if (60 * 60 * 24 < milliseconds && milliseconds <= 60 * 60 * 24 * 30) {
    timeSpanStr = Math.ceil(milliseconds / (60 * 60 * 24)) + '天前';
  }
  //大于一个月小于一年
  else if (60 * 60 * 24 * 30 < milliseconds && milliseconds <= 60 * 60 * 24 * 30 * 12){
    timeSpanStr = Math.ceil(milliseconds / (60 * 60 * 24 * 30)) + '个月前';
  }
  //超过一年显示
  else {
    timeSpanStr = year + '年' + month + '月' + day + '日 ' + hour + ':' + minute;  
  }
  return timeSpanStr;
}

总结

以上所述是小编给大家介绍的JS根据Unix时间戳显示发布时间是多久前 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Javascript 自适应高度的Tab选项卡
Apr 05 Javascript
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
Feb 27 Javascript
js检测判断日期大于多少天的方法
May 04 Javascript
JavaScript数据类型学习笔记
Jan 25 Javascript
Jquery EasyUI实现treegrid上显示checkbox并取选定值的方法
Apr 29 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
Dec 02 Javascript
深入理解jquery中的each用法
Dec 14 Javascript
javascript 操作cookies详解及实例
Feb 22 Javascript
JS原生数据双向绑定实现代码
Aug 14 Javascript
JS运动特效之完美运动框架实例分析
Jan 24 Javascript
JS设计模式之访问者模式定义与用法分析
Feb 05 Javascript
详解PHP后期静态绑定分析与应用
Mar 21 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
Jul 10 #Javascript
JS将时间秒转换成天小时分钟秒的字符串
Jul 10 #Javascript
js Array.slice的8种不同用法示例
Jul 10 #Javascript
vue-router二级导航切换路由及高亮显示的实现方法
Jul 10 #Javascript
Vue编程式跳转的实例代码详解
Jul 10 #Javascript
微信小程序在ios下Echarts图表不能滑动的问题解决
Jul 10 #Javascript
Vue事件修饰符native、self示例详解
Jul 09 #Javascript
You might like
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
php生成二维码
2015/08/10 PHP
php模板引擎技术简单实现
2016/03/15 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
2017/07/19 PHP
JavaScript之HTMLCollection接口代码
2011/04/27 Javascript
js禁止小键盘输入数字功能代码
2011/08/01 Javascript
给jQuery方法添加回调函数一款插件的应用
2013/01/21 Javascript
ie 7/8不支持trim的属性的解决方案
2014/05/23 Javascript
jquery中ajax处理跨域的三大方式
2016/01/05 Javascript
javascript先序遍历DOM树的方法
2016/02/27 Javascript
浅谈js多维数组和hash数组定义和使用
2016/07/27 Javascript
angularjs封装$http为factory的方法
2017/05/18 Javascript
对象不支持indexOf属性或方法的解决方法(必看)
2017/05/28 Javascript
微信上传视频文件提示(推荐)
2018/11/22 Javascript
微信小程序新手教程之启动页的重要性
2019/03/03 Javascript
详解小程序input框失焦事件在提交事件前的处理
2019/05/05 Javascript
微信小程序绘制图片发送朋友圈
2019/07/25 Javascript
jQuery中DOM操作原则实例分析
2019/08/01 jQuery
详解vue中多个有顺序要求的异步操作处理
2019/10/29 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
[56:57]LGD vs VP 2019DOTA2国际邀请赛淘汰赛 胜者组赛BO3 第一场 8.20.mp4
2019/08/22 DOTA
Python实现删除文件但保留指定文件
2015/06/21 Python
Python 获取当前所在目录的方法详解
2017/08/02 Python
python实现人人自动回复、抢沙发功能
2018/06/08 Python
pygame游戏之旅 载入小车图片、更新窗口
2018/11/20 Python
django认证系统 Authentication使用详解
2019/07/22 Python
把django中admin后台界面的英文修改为中文显示的方法
2019/07/26 Python
浅谈python中统计计数的几种方法和Counter详解
2019/11/07 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
世界上最大的汽车共享网站:Zipcar
2017/01/14 全球购物
四好少年事迹材料
2014/01/12 职场文书
检讨书格式
2015/01/23 职场文书
结婚当天新郎保证书
2015/05/08 职场文书
html+css合并表格边框的示例代码
2021/03/31 HTML / CSS
Python 使用dict实现switch的操作
2021/04/07 Python