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实现画板的代码
Sep 05 Javascript
单击按钮显示隐藏子菜单经典案例
Jan 04 Javascript
简单实例处理url特殊符号&amp;处理(2种方法)
Apr 02 Javascript
jQuery Raty 一款不错的星级评分插件
Aug 24 Javascript
最常见和最有用的字符串相关的方法详解
Feb 06 Javascript
js将当前时间格式化为 年-月-日 时:分:秒的实现代码
Jan 20 Javascript
原生JS+HTML5实现跟随鼠标一起流动的粒子动画效果
May 03 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
Feb 19 Javascript
浅谈Vue2.4.0 $attrs与inheritAttrs的具体使用
Mar 08 Javascript
js实现消灭星星(web简易版)
Mar 24 Javascript
解决antd的Form组件setFieldsValue的警告问题
Oct 29 Javascript
如何在JavaScript中正确处理变量
Dec 25 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 多进程 解决难题
2009/06/22 PHP
Ajax PHP 边学边练 之三 数据库
2009/11/26 PHP
php中如何使对象可以像数组一样进行foreach循环
2013/08/09 PHP
一波PHP中cURL库的常见用法代码示例
2016/05/06 PHP
redis查看连接数及php模拟并发创建redis连接的方法
2016/12/15 PHP
php字符集转换
2017/01/23 PHP
PHP框架实现WebSocket在线聊天通讯系统
2019/11/21 PHP
js中传递特殊字符(+,&amp;)的方法
2014/01/16 Javascript
JavaScript实现简洁的俄罗斯方块完整实例
2016/03/01 Javascript
Node.js操作mysql数据库增删改查
2016/03/30 Javascript
AngularJS表单和输入验证实例
2016/11/02 Javascript
vue数据双向绑定原理解析(get &amp; set)
2017/03/08 Javascript
JavaScript原生数组Array常用方法
2017/04/06 Javascript
JS模拟超市简易收银台小程序代码解析
2017/08/18 Javascript
vue中路由验证和相应拦截的使用详解
2017/12/13 Javascript
解决Vue-Router升级导致的Uncaught (in promise)问题
2020/08/07 Javascript
[01:07:22]2014 DOTA2华西杯精英邀请赛 5 24 DK VS VG加赛
2014/05/26 DOTA
python3.3教程之模拟百度登陆代码分享
2014/01/16 Python
基于Python的身份证号码自动生成程序
2014/08/15 Python
Python合并多个装饰器小技巧
2015/04/28 Python
Python的Django框架中TEMPLATES项的设置教程
2015/05/29 Python
Python_LDA实现方法详解
2017/10/25 Python
Python编程django实现同一个ip十分钟内只能注册一次
2017/11/03 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
2019/04/15 Python
python实现mean-shift聚类算法
2020/06/10 Python
各大浏览器 CSS3 和 HTML5 兼容速查表 图文
2010/04/01 HTML / CSS
美国最大的旗帜经销商:Carrot-Top
2018/02/26 全球购物
Linux面试题LINUX系统类
2014/11/19 面试题
党章学习思想汇报
2014/01/14 职场文书
歌唱比赛策划方案
2014/06/06 职场文书
银行纠风工作实施方案
2014/06/08 职场文书
四风问题民主生活会对照检查材料思想汇报
2014/09/27 职场文书
夫妻吵架保证书
2015/05/08 职场文书
法人代表证明书范本
2015/06/18 职场文书
微信早安问候语
2015/11/10 职场文书
队列队形口号
2015/12/25 职场文书