天天看点

JS Date 时间、时间戳转换总结

更新下 ES6 版本
  1. 标准时间戳 yyyy-MM-dd HH-mm-ss 2017-09-28 11:22:57
const timeFormat = (date) => {
  var y = date.getFullYear() 
  var m = date.getMonth() + 1 
  m = m < 10 ? ('0' + m) : m    
  var d = date.getDate();    
  d = d < 10 ? ('0' + d) : d    
  var hh = date.getHours();  
  hh = hh < 10 ? ('0' + hh) : hh; 
  var mm = date.getMinutes() 
  var ss = date.getSeconds() 
  mm = mm < 10 ? ('0' + mm) : mm
  ss = ss < 10 ? ('0' + ss) : ss
  return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
}
           

然后直接在调用就可以了

formatDateTime(date)

,传入date对象,具体格式可以自行调整

  1. 几分钟前 几小时前 几天前 时间戳
function formatDateTime(date){
    var timeNow = Date.now()
    let differ = timeNow - date.getTime()
    let dd = parseInt(differ / (24 * 60 * 60 * 1000))
    let hh = parseInt(differ / (60 * 60 * 1000))
    let mm = parseInt(differ / (60 * 1000))
    console.log(dd)
    if(dd>0 && dd<4){
        return `${dd}天前`
    }else if(dd<=0 && hh>0){
      return `${hh}小时前`
    }else if(hh<=0 && mm>0){
      return `${mm}分钟前`
    }else{
        var s = new Date(date)
        return `${s.getMonth() + 1}月${s.getDate()}日`
    }
}
           

然后直接在调用就可以了

formatDateTime(date)

,传入date对象,具体格式可以自行调整 类似 几周前 几个月前等等