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 相关文章推荐
jQuery 淡入淡出 png图在ie8下有黑色边框的解决方法
Mar 05 Javascript
使用js检测浏览器是否支持html5中的video标签的方法
Mar 12 Javascript
使用变量动态设置js的属性名
Oct 19 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
Jan 12 Javascript
javascript实现页面滚屏效果
Jan 17 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
Dec 20 Javascript
js中如何完美的解析数据
Mar 18 Javascript
结合Vue控制字符和字节的显示个数的示例
May 17 Javascript
JS简单生成由字母数字组合随机字符串示例
May 25 Javascript
使用ECharts实现状态区间图
Oct 25 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
Jul 30 Javascript
vue路由切换之淡入淡出的简单实现
Oct 31 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
BBS(php &amp; mysql)完整版(二)
2006/10/09 PHP
php iconv() : Detected an illegal character in input string
2010/12/05 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
PHP中如何调用webservice的实例参考
2013/04/25 PHP
PHP5.5迭代生成器用法实例详解
2016/03/16 PHP
PHP实现在数据库百万条数据中随机获取20条记录的方法
2017/04/19 PHP
PHP实现可精确验证身份证号码的工具类示例
2018/05/31 PHP
ThinkPHP 3使用OSS的方法
2018/07/19 PHP
Mozilla 表达式 __noSuchMethod__
2009/04/05 Javascript
javascript事件问题
2009/09/05 Javascript
csdn 论坛技术区平均给分功能
2009/11/07 Javascript
YUI Compressor压缩JavaScript原理及微优化
2013/01/07 Javascript
jQuery模拟点击A标记示例参考
2014/04/17 Javascript
jQuery+css实现百度百科的页面导航效果
2014/12/16 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
手机端图片缩放旋转全屏查看PhotoSwipe.js插件实现
2016/08/25 Javascript
利用AngularJs实现京东首页轮播图效果
2016/09/08 Javascript
Angularjs 实现一个幻灯片示例代码
2016/09/08 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
ES6正则的扩展实例详解
2017/04/25 Javascript
Vue上传组件vue Simple Uploader的用法示例
2017/08/25 Javascript
JS装饰器函数用法总结
2018/04/21 Javascript
原生js实现form表单序列化的方法
2018/08/02 Javascript
Node.js系列之发起get/post请求(2)
2019/08/30 Javascript
ant design 日期格式化的实现
2020/10/27 Javascript
Python Dataframe 指定多列去重、求差集的方法
2018/07/10 Python
利用pyshp包给shapefile文件添加字段的实例
2019/12/06 Python
python代码如何注释
2020/06/01 Python
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
牛津在线药房:Oxford Online Pharmacy
2020/11/16 全球购物
城市精细化管理实施方案
2014/03/04 职场文书
先进教师事迹材料
2014/12/16 职场文书
办公室主任岗位职责范本
2015/03/31 职场文书
员工福利申请报告
2015/05/15 职场文书
领导离职感言
2015/08/03 职场文书
浅析python中特殊文件和特殊函数
2022/02/24 Python