js中国标准时间转年月日时分秒-时间戳转年月日

export function dateFormat(fmt, date) {
  let ret
  const opt = {
    'Y+': date.getFullYear().toString(), // 年
    'm+': (date.getMonth() + 1).toString(), // 月
    'd+': date.getDate().toString(), // 日
    'H+': date.getHours().toString(), // 时
    'M+': date.getMinutes().toString(), // 分
    'S+': date.getSeconds().toString(), // 秒
    // 有其他格式化字符需求可以继续添加,必须转化成字符串
  }
  for (let k in opt) {
    ret = new RegExp('(' + k + ')').exec(fmt)
    if (ret) {
      fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0'))
    }
  }
  return fmt
}
 
// 用法
// let date = new Date()
// dateFormat("YYYY-mm-dd HH:MM", date)
// >>> 2019-06-06 19:45`
 
// 1626772706000 ---> Tue Jul 20 2021 17:18:26 GMT+0800 (中国标准时间)
function timestampToDate(time) {
  var d = new Date()
  d.setTime(time)
  return d
}
 
// 1626772706000 ---> Tue Jul 20 2021 17:18:26 GMT+0800 (中国标准时间)--->"2021-07-20 17:18"
export function timestampFormatDate(timestamp, fmt) {
  const date = timestampToDate(timestamp)
  const formatData = dateFormat(fmt, date)
  return formatData
}

 js根据当前时区获取当前北京时间

思路:获取当前UTC时间,然后根据UCT时间计算北京时间

new Date(new Date().getTime()+(parseInt(new Date().getTimezoneOffset()/60) + 8)*3600*1000);
}
//Fri May 20 2022 10:24:59 GMT+0800 (中国标准时间)


//获取时间戳 1653013480061
new Date(new Date().getTime()+(parseInt(new Date().getTimezoneOffset()/60) + 8)*3600*1000).getTime()


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值