使用moment将utc时间转本地时间

本文介绍了如何使用moment.js库在国际项目中处理UTC时间与本地时区的转换,包括从UTC到本地日期时间格式化和从本地时间到UTC的转换操作,以适应不同地区用户的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

因为项目是国际化的,所以里面后端接口返回的所有时间都是采用世界标准时间UTC表示,而前端则需要根据当前所在的时区转成当前的时间,比如返回的时间是中午12点,则你在中国打开则应该显示20点((UTC+8个时区)),在纽约打开则显示早上8点(UTC-4个时区)。 看起来其实也不难,就是获取所在的时区然后再去加减。为了方便,我就直接用moment.js这个插件来运算了。 这个插件功能太强大,文档内容太多,找这些api还花了不少功夫~,所以记录一下

安装

npm install moment --save   // npm
yarn add moment             // Yarn

使用

  • 将utc时间转为本地时间
// utils.js
import moment from 'moment'

// 这里date是后端返回的字符串格式,如:2022-05-13 16:31:53
export function utcToLocal(date) {
  const fmt = 'YYYY-MM-DD HH:mm:ss'
  return moment.utc(date).local().format(fmt)
}
  • 将本地时间转为utc时间
export function localToUtc(date) {
  const fmt = 'YYYY-MM-DD HH:mm:ss'
  return moment(date, fmt).utc().format(fmt)
}

完事~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值