UTC、格林威治时间、本地时间

本文详细解析了格林尼治时间(GMT)、协调世界时(UTC)的概念及其与ISO8601标准的关系,同时介绍了时间从格林尼治到本地,以及从本地到格林尼治的转换方法。

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

一、名词解释

1、什么是格林尼治时间(GMT)

       是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,格林尼治标准时间的正午是指当太阳横穿格林尼治子午线时(也就是在格林尼治时)的时间,由本初子午线确定。

2、什么是格林威治时间

       由于翻译原因,格林威治 ========格林尼治

3、什么是UTC

       协调世界时,又称世界统一时间世界标准时间国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC,由原子钟提供。

       在军事中,协调世界时区会使用“Z”来表示。又由于Z在无线电联络中使用“Zulu”作代称,协调世界时也会被称为"Zulu time"。


4、格林尼治(GMT)、协调世界时UTC的关系

       一句话总结:在不追求精度情况下,格林尼治(GMT)约等于协调世界时(UTC);

GMT和UTC不同
 格林尼治(GMT)世界协调时(UTC)
计量方式是以位于伦敦郊区的皇家格林尼治天文台的本初子午线为标准的时间计量系统是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统
精确度精确度相对低,地球每天的自转是有些不规则的,而且正在缓慢减速。所以,格林尼治时间的精确度越来越低。精确度相对高,由原子钟提供,世界协调时UTC比格林尼治时更加科学更加精确。
   

5、什么是ISO标准(ISO 8601)

       国际标准化组织的国际标准ISO 8601是日期和时间的表示方法,全称为《数据存储和交换形式·信息交换·日期和时间的表示方法》。

       表示方法举例(此处只列出前后台交互推荐的格式):

时间类型时间格式说明
带时区2019-12-04T10:30:08+08:00这是本地时间,是世界协调时间加过或者减去时区之后的时间
世界协调时2019-12-04T02:30:08Z表示世界协调时,0时区

二、格林威治时间转当地时间

//time:标准ISO时间格式  type:string:
//eg:2020-03-15T22:22:22Z  (UTC时间)
//eg:2020-03-15T22:22:22.000Z (UTC时间)
let UTCToLocalTime = (time)=>{
    const utcTimeMS = new Date(time).getTime();
    const zoneOffsetTime = (new Date()).getTimezoneOffset();//获取的是0时区相对于本地时间的时间差(单位:分钟),所以东8区是-480分钟。
    //0时区(ms)-本地时间(ms) = zoneOffsetTime*60000(ms)
    let localTime = (new Date(utcTimeMS - zoneOffsetTime*60000 )).toISOString();
    localTime = localTime.substr(0,localTime.lastIndexOf('.'));
    return localTime.replace('T',' ');
}

三、当地时间转格林威治

//time: 能被Date转成字符串表示的,eg:'2020-03-16 06:22:22'
var localTimeToUTC = (time)=>{
    const localTimeString = new Date(time);
    const utcTimeString = localTimeString.toUTCString();
    return new Date(utcTimeString).toISOString();
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值