js <->java 时区处理

本文介绍了计算机中时间戳的概念,包括UTC和GMT的区别,以及它们与原子时钟的关系。通过JavaScript和Java的例子展示了如何获取和格式化UTC和本地时间。同时,解释了Unix时间戳的定义,它是从1970年1月1日起的秒数。还提到了GMT,即格林尼治平均时间,及其与时区的关联。对于开发者来说,正确处理时区问题至关重要。
摘要由CSDN通过智能技术生成

UTC

UTC(Coordinated Universal Time)GMT依赖于地球自转,而地球自转不规则,所以使用原子时钟报时的UTC替代.
javascript

new Date().toISOString() //UTC zero 时间
"2021-02-08T14:50:24.541Z"

java

System.out.println(ZonedDateTime.now(ZoneId.of("UTC")));
2021-02-08T14:54:16.024Z[UTC]
System.out.println(ZonedDateTime.now());
2021-02-08T22:54:16.063+08:00[Asia/Shanghai]

TimeStamp

UnixTimeStamp(又称PosixTime)UTC时间从1970年1月1日到现在的秒数.在调用系统函数展示时间时,底层是根据unixtimestamp转换为UTC时间,再加上偏移数得到的.
javascript

new Date().getTime()
//1612796240269


System.out.println(Instant.now().getEpochSecond());
//1612796278

GMT

GMT(Greenwich Mean Time)正午太阳横穿Greenwich子午线(太阳在最高点).Greenwich天文台每隔一小时向全世界发调时信息.
javascript:

//0时区
new Date().toGMTString()
"Mon, 08 Feb 2021 14:30:39 GMT"
//8时区
new Date().toString()
"Mon Feb 08 2021 22:31:20 GMT+0800 (中国标准时间)"

java

System.out.println(ZonedDateTime.now(ZoneId.of("UTC")).format(DateTimeFormatter.RFC_1123_DATE_TIME));
// Mon, 8 Feb 2021 14:47:30 GMT
System.out.println(ZonedDateTime.now().format(DateTimeFormatter.RFC_1123_DATE_TIME));
// Mon, 8 Feb 2021 22:46:03 +0800

参考:
时区处理总结
时区,GMT时间,UTC时间,UNIX时间戳
程序员如何处理好时区问题
java中的时区理解和处理

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值