js显示时间为多少天前

2019-12-11 03:28
椰子皮
2307
1
1
vue

在一些内容列表,我们希望时间更加的直观,年月日这种格式没有给人一种最近的感觉

废话少说,上代码。



const minute = 1000 * 60
const hour = minute * 60
const day = hour * 24
// const halfamonth = day * 15
const month = day * 30
const timeAgo = time => {
  const dateTimeStamp = Date.parse(time);
  const now = new Date().getTime()
  const diffValue = now - dateTimeStamp
  let result = '';
  if (diffValue < 0) {
    return;
  }
  const monthC = diffValue / month
  // console.log(monthC)
  // var weekC = diffValue / (7 * day)
  const dayC = diffValue / day
  const hourC = diffValue / hour
  const minC = diffValue / minute
  if (monthC >1) {
    result = time
  } else if (dayC >= 1) {
    result = `${parseInt(dayC)}天前`
  } else if (hourC >= 1) {
    result = `${parseInt(hourC)}个小时前`
  } else if (minC >= 1) {
    result = `${parseInt(minC)}分钟前`
  } else result = '刚刚'
  return result
}





export { timeAgo }

 

传入时间对象即可

 

支付宝微信
1
关注公众号获取更多内容
nuxt中在middleware中间件中拦截错误
结合lazyload实现文章页里面的图片预加载
共有 1 条评论
发表评论
  • Paul#10060
    2019-12-26 22:08
    湖南省株洲市天元区
    Win7

    要是文章代码高亮行号显示就好了,问一句。作者打不打算将博客开源

    椰子皮2022-03-27 回复@Paul
    test
总共 1
  • 1
不支持canvas
春季
夏季
秋季
冬季
暗黑
简约
小清新