js中UTC时间需要转换时区吗?

我调用后台程序得到一个UTC毫秒值,然后发现如果直接formate不做时区转换处理显示的时间就是正确的,如果我处理北京的时区,加8个小时,时间显示就不正确了.前台显示UTC时间需要处理时区吗?

经常混淆于此,特地研究了一下,记录在此以备忘。整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC,UniversalTimeCoordinated)。UTC与格林尼治平均时(GMT,GreenwichMeanTime)一样,都与英国伦敦的本地时相同。在本文中,UTC与GMT含义完全相同。北京时区是东八区,领先UTC八个小时,在电子邮件信头的Date域记为+0800。如果在电子邮件的信头中有这么一行:Date:Fri,08Nov200209:42:22+0800说明信件的发送地的地方时间是二○○二年十一月八号,星期五,早上九点四十二分(二十二秒),这个地方的本地时领先UTC八个小时(+0800,就是东八区时间)。电子邮件信头的Date域使用二十四小时的时钟,而不使用AM和PM来标记上下午。以这个电子邮件的发送时间为例,如果要把这个时间转化为UTC,可以使用一下公式:UTC+时区差=本地时间时区差东为正,西为负。在此,把东八区时区差记为+0800,UTC+(+0800)=本地(北京)时间(1)那么,UTC=本地时间(北京时间))-0800(2)0942-0800=0142即UTC是当天凌晨一点四十二分二十二秒。如果结果是负数就意味着是UTC前一天,把这个负数加上2400就是UTC在前一天的时间。例如,本地(北京)时间是0432(凌晨四点三十二分),那么,UTC就是0432-0800=-0368,负号意味着是前一天,-0368+2400=2032,既前一天的晚上八点三十二分。纽约的时区是西五区,比UTC落后五个小时,记为-0500:UTC+(-0500)=纽约时间(3)UTC=纽约时间+0500(4)把(2)式-(4)式相比较,UTC=北京时间-0800=纽约时间+0500(5)即北京时间=纽约时间+1300(6)即北京时间领先纽约时间十三个小时,由(6)式,纽约时间=北京时间-1300(7)在四月下旬,纽约又换用夏令时,又称为日光节约时,比标准纽约时间提前一个小时,实际成为西四区的标准时间,成为-0400。UTC+(-0400)=纽约夏令时,套用以上公式,北京时间=纽约夏令时+1200纽约夏令时=北京时间-1200在这些转换中,最重要的公式就是UTC+时区差=本地时间时区差东为正,西为负。例如,东八区(北京)是+0800,西五区(纽约)是-0500,加州是西八区,是-0800,美国中部时区是西六区,-0600,美国山地时区是西七区,-0700,太平洋时区是西八区,-0800,在夏天使用夏时制,成为-0700。德国时区是东一区,+0100,夏天变为+0200。多数电子邮件程序,例如OutlookExpress,在显示时间时,计算机程序把时间先转换成为本地时间再显示,例如,邮件的Date域为:Date:Fri,08Nov200209:42:22+0800追问

我是这样理解你的话的,UTC时间的显示实际上还是本地时间,只是他带有一个时区的信息如+0800,方便我们换算,如果不换算,显示本地时间就直接显示,当需要换算时再取得头信息中的时区然后换算?

温馨提示:内容为网友见解,仅供参考
无其他回答

js中UTC时间需要转换时区吗?
以这个电子邮件的发送时间为例,如果要把这个时间转化为UTC,可以使用一下公式:UTC+时区差=本地时间时区差东为正,西为负。在此,把东八区时区差记为+0800,UTC+(+0800)=本地(北京)时间(1)那么,UTC=本地时间(北京时间))-0800(2)0942-0800=0142即UTC是当天凌晨一点四十二分二十二秒。如...

前端JS如何将UTC世界时间格式转换为本地时间格式
背景在前后端数据接口通信中,后台返回的时间往往是UTC格式的,即2020-10-12T10:31:35.891724+00:00这种,这可能是因为在数据库中存储时间格式选择的是TIMESTAMP。作为前端,我们需要将其转换为标准的本地格式,并用“YYYY-MM-DDHH:mm:ss”这种格式呈现给用户,用户才能看得懂。那么通常情况下,怎么...

一篇搞定 JavaScript 时区问题
在开发应用时,如日历应用,必须考虑用户来自不同时区的情况。数据传输时,应使用UTC时间或包含偏移信息的格式,以便服务器正确处理。在客户端,使用如Moment.js这样的库可以大大简化日期和时区的处理,如格式化、解析和处理时区转换,避免了手动操作可能带来的复杂性和错误。尽管JavaScript的内置Date对象存在局...

...UTC日期指的是在没有时区偏差的情况下(将日期转换为GMT时间)的日期...
这两个方法的区别在与UTC,所以首先要理解UTC是什么意思:UTC是协调世界时(Universal Time Coordinated)英文缩写,是由国际无线电咨询委员会规定和推荐,并由国际时间局(BIH)负责保持的以秒为基础的时间标度。UTC相当于本初子午线(即经度0度)上的平均太阳时,过去曾用格林威治平均时(GMT)来表示.北京时间比...

js获取指定时间戳
请注意,由于JavaScript中的Date对象是基于本地时区的,所以在创建特定时间的Date对象时,可能需要考虑时区转换的问题。如果需要处理时区差异,可以使用第三方库如moment.js或luxon来处理时区问题。另外,不同的编程环境可能对时间戳的精度和表示方式有所不同,需要根据具体情况进行适当调整和处理。使用这些方法...

JS发请求传参全球时间怎么改成当地时间
要将JS发请求传参中的全球时间转换为当地时间,可以使用JavaScript的Date对象和相关方法来进行处理。以下是一种常见的方法:首先,获取到全球时间的时间戳(通常是以UTC时间表示)。使用JavaScript的Date对象,将时间戳转换为本地时间。根据需要,使用Date对象的方法(例如getFullYear、getMonth、getDate等)...

JS:如何获取时区
如果相比 Asia\/Shanghai 你更想要 UTC+8 这种格式。那你可以通过获取时区偏移量的方式。执行 getTimezoneOffset() 方法会返回 UTC 相对于当前时区 的相差分钟数。我们只需要再除以 -60 就得到了小时的偏移量。我们通常所说的时间戳是指 UTC 时间自 1970 年 1 月 1 日 00 时 00 ...

js Date时区矫正
相较于UTC格式,GMT没有那么精确,不能具体到毫秒。        以下内容为追加GMT格式转换 参考:    JS操作时间 - UNIX时间戳简单介绍  -  阿胜4K     世界协调时间(UTC)    MDN Date ...

如何将UTC时间转换为本地时间
要将 UTC 时间转换为本地时间,请按照以下步骤操作:1. 确定您的本地时间偏移量,相对于 UTC 时间。在 Windows 计算机上,请执行以下步骤:- 点击“开始”按钮,然后点击“运行”。- 输入“timedate.cpl”并点击“确定”。- 转到“时区”选项卡,并确认已选择您的本地时区。如果没有,请从列表中...

UTC时间与北京时间的差多久?
要将北京时间转换为UTC,只需用UTC加上时区差,如北京到UTC的时间差为+0800,计算公式为UTC = 北京时间 - 0800。例如,如果北京时间为09:42:22,UTC时间则是01:42:22。若时区差为负,意味着是UTC前一天,如北京04:32则UTC为前一天的20:32。对于夏令时,纽约使用西四区标准时,比UTC晚12小时,...

相似回答