js实现时间戳转化为自定义格式的年月日时分秒(yyyy-MM-dd HH:mm:ss)

代码引自:js实现时间戳转化为自定义格式的年月日时分秒(yyyy-MM-dd HH:mm:ss)_winne雪-CSDN博客

1、自定义方法转换

 getYMDHMS (timestamp) {
      let time = new Date(timestamp)
      let year = time.getFullYear()
      let month = time.getMonth() + 1
      let date = time.getDate()
      let hours = time.getHours()
      let minute = time.getMinutes()
      let second = time.getSeconds()

      if (month < 10) { month = '0' + month }
      if (date < 10) { date = '0' + date }
      if (hours < 10) { hours = '0' + hours }
      if (minute < 10) { minute = '0' + minute }
      if (second < 10) { second = '0' + second }
      return year + '-' + month + '-' + date + ' ' + hours + ':' + minute + ':' + second
    }
  
  // 使用es6的padStart()方法来补0
  getYMDHMS (timestamp) {
      let time = new Date(timestamp)
      let year = time.getFullYear()
      const month = (time.getMonth() + 1).toString().padStart(2, '0')
      const date = (time.getDate()).toString().padStart(2, '0')
      const hours = (time.getHours()).toString().padStart(2, '0')
      const minute = (time.getMinutes()).toString().padStart(2, '0')
      const second = (time.getSeconds()).toString().padStart(2, '0')

      return year + '-' + month + '-' + date + ' ' + hours + ':' + minute + ':' + second
    }

2、使用JavaScript 日期处理类库转换(Moment.js)

类库地址:http://momentjs.cn/
需要先npm安装:npm install moment

import Moment from 'moment'
// 时间戳(毫秒)转化为标准时间格式 
export function getFullTime(timeStamp) 
{ 
   const stamp = new Date(timeStamp)
   const time = Moment(stamp).format('YYYY-MM-DD HH:mm:ss')
   return time
}

moment.js中获取相对时间:

import Moment from 'moment'

// 获取今天日期
console.log(moment().format('YYYY-MM-DD'))
// 获取昨天日期
console.log(moment().subtract(1, 'days').format('YYYY-MM-DD'))
// 近一周前
console.log(moment().subtract('days', 6).format('YYYY-MM-DD'))
// 获取当月一号
console.log(moment().startOf('month').format('YYYY-MM-DD'))
// 当月末尾号
console.log(moment().endOf('month').format('YYYY-MM-DD'))
// 上周开始
console.log(moment().week(moment().week() - 1).startOf('week').format('YYYY-MM-DD'))
// 上周结束
console.log(moment().week(moment().week() - 1).endOf('week').format('YYYY-MM-DD'))

// 上个月开始
console.log(moment().month(moment().month() - 1).startOf('month').format('YYYY-MM-DD'))
// 上个月结束
console.log(moment().month(moment().month() - 1).endOf('month').format('YYYY-MM-DD'))

3、相对时间戳计算

getTime() 方法可返回距 1970 年 1 月 1 日之间的毫秒数。
Date.now() 获取当前时间的时间戳(毫秒)
toLocaleDateString() 方法可根据本地时间把 Date 对象的日期部分转换为字符串,并返回结果。

 

let curDate = new Date()    
// 获取当前时间的时间戳(法一)
// const now = new Date() - 0;
//当前时间,时间戳(法二)
let endTimestamp = curDate.getTime() 
// 前一天时间戳(前24小时)
let endTimestamp = curDate.getTime() - 24 * 60 * 60 * 1000 //当前时间戳(毫秒) - 1天毫秒数 = 前一天时间戳
// 当前时间的后10分钟,时间戳
let timeStamp = curDate.getTime() + 10 * 60 * 1000 
// 明天的此时,时间戳
let endTimestamp = curDate.getTime() + 24 * 60 * 60 * 1000
// 当天0点,时间戳
let endTimestamp = new Date(new Date().toLocaleDateString()).getTime() 
// 昨天0点,时间戳
let endTimestamp = new Date(new Date().toLocaleDateString()).getTime() - 24 * 60 * 60 * 1000 
// 昨天23:59:59点(当天0点 - 1秒),时间戳
let endTimestamp = new Date(new Date().toLocaleDateString()).getTime() - 1 * 1000
// 前六天0点,时间戳
let endTimestamp = new Date(new Date().toLocaleDateString()).getTime() - 24 * 60 * 60 * 1000 * 6 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Math.random( ) ;

如果你刚好喜欢,则可以给我点动

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值