使用JS,时间戳数值怎么转换成日期

JavaScript023

使用JS,时间戳数值怎么转换成日期,第1张

推荐一个JavaScript常用函数库

 jutils - formatDate() 时间戳的转换(自定义格式)

支持自定义格式,可以显示年,月,周,日,时,分,秒多种形式的日期和时间。

示例:

年、月、日、时、分、秒

var date = jutils.formatDate(new Date(1533686888*1000),"YYYY-MM-DD HH:ii:ss")

console.log(date)

// 2019-07-09 19:44:01

年、月、日、周

var date = jutils.formatDate(new Date(1562672641*1000),"YYYY-MM-DD 周W")

console.log(date)

//2019-07-09 周二

月、日、周

var date = jutils.formatDate(new Date(1562672641*1000),"MM-DD 周W")

console.log(date)

//07-09 周二

时、分、秒

var date = jutils.formatDate(new Date(1562672641*1000),"HH:ii:ss")

console.log(date)

//19:44:01

更多自定义返回格式可以参照:

一行js代码实现时间戳转时间格式

下面是部分源码的截图:

js将时间戳转为日期格式

// 计算两个时间戳相差的多少年多少月多少天

calculateDiffTime() {

  let startTime = '1629107469000'  //2021-08-16 17:51

  let endTime = '1976262719000'  //2032-08-16 17:51

  let flag = [1, 3, 5, 7, 8, 10, 12, 4, 6, 9, 11, 2]

  let start = new Date(startTime)

  let end = new Date(endTime)

  let year = end.getFullYear() - start.getFullYear()

  let month = end.getMonth() - start.getMonth()

  let day = end.getDate() - start.getDate()

  if (month <0) {

    year--

    month = end.getMonth() + (12 - start.getMonth())

  }

  if (day <0) {

    month--

    let index = flag.findIndex((temp) =>{

      return temp === start.getMonth() + 1

    })

    let monthLength

    if (index <= 6) {

      monthLength = 31

    } else if (index >6 &&index <= 10) {

      monthLength = 30

    } else {

      monthLength = 28

    }

    day = end.getDate() + (monthLength - start.getDate())

  }

  this.result = `相差${year}年${month}月${day}天`

  console.log(this.result)

}

#  计算两个时间戳相差的多少年多少月多少天多少小时多少分多少秒(另一种写法)

//计算两个时间戳相差的多少年多少月多少天多少小时多少分多少秒

calculateDiffTime (){

  let startTime = '1629107469000'  //2021-08-16 17:51

  let endTime = '1976262719000'  //2032-08-16 17:51

  let runTime = parseInt((endTime - startTime) / 1000)

  var year = Math.floor(runTime / 86400 / 365)

  runTime = runTime % (86400 * 365)

  var month = Math.floor(runTime / 86400 / 30)

  runTime = runTime % (86400 * 30)

  var day = Math.floor(runTime / 86400)

  runTime = runTime % 86400

  var hour = Math.floor(runTime / 3600)

  runTime = runTime % 3600

  var minute = Math.floor(runTime / 60)

  runTime = runTime % 60

  var second = runTime

  console.log(`相差${year}年${month}月${day}天${hour}小时${minute}分${second}秒`)

 return year+','+month+','+day+','+hour+','+minute+','+second

}