時區和時間戳
從漫畫中舉的例子來看,這里的時間戳,指的就是Unix時間戳(Unix timestamp)。它也被稱為Unix時間(Unix time)、POSIX時間(POSIX time),是一種時間表示方式,定義為從格林威治時間1970年01月01日00時00分00秒起至現在的總秒數。因此,嚴格來說,不管你處在地球上的哪個地方,任意時間點的時間戳都是相同的。這點有利于線上和客戶端分布式應用統一追蹤時間信息。
格林威治時間(GMT)
是指位于英國倫敦郊區的皇家格林尼治天文臺當地的平太陽時,因為本初子午線被定義為通過那里的經線。
歷史
人們最初確定時間的方式是直接觀測太陽在當地天空中的位置,例如使用日晷,這樣測量出來的時間被稱為地方真太陽時(local apparent solar time / local apparent time)。后來,人們為了解決地球公轉軌道不是正圓和黃道與赤道之間存在夾角而造成的測出的時間的流逝不均勻的問題,以假想天體“平太陽”(mean Sun)為基準測量時間,而不再以真太陽為基準,這樣測量出來的時間被稱為地方平太陽時(local mean solar time / local mean time)。地方真太陽時和地方平太陽時的差異被稱為均時差(equation of time)。
后來,格林尼治天文臺所在地的地方平太陽時被定義為全世界的時間標準,被稱為格林尼治平時(Greenwich Mean Time),“平時(mean time)”就是“平太陽時(mean solar time)”的意思。
平太陽時
平太陽或假太陽是一個假想的天體,它每年和真太陽同時從春分點出發,在天赤道上從西向東勻速運行,這個速度相當于真太陽在黃道上運行的平均速度,最后和真太陽同時回到春分點。
平太陽是美國天文學家紐康提出來的,主要是為了得到一個均勻適用的日常時間。
平太陽日是經由觀察太陽相對于恒星的周日運動,所獲得的平均太陽時,經由人為的調整而顯示在時鐘上的時間。
本初子午線
本初子午線(英語:Prime meridian),即0度經線,亦稱格林威治子午線、格林尼治子午線或本初經線,是經過英國格林尼治天文臺的一條經線(亦稱子午線)。本初子午線的東西兩邊分別定為東經和西經,于180度相遇。
時區
時區是地球上的區域使用同一個時間定義。以前,人們通過觀察太陽的位置(時角)決定時間,這就使得不同經度的地方的時間有所不同(地方時)。1863年,首次使用時區的概念。時區通過設立一個區域的標準時間部分地解決了這個問題。
https://www.zeitverschiebung.net/cn/timezone/asia--shanghai
世界各個國家位于地球不同位置上,因此不同國家,特別是東西跨度大的國家日出、日落時間必定有所偏差。這些偏差就是所謂的時差。
時區縮寫裝車
IST - India Standard Time - UTC+5:30,印度標準時間
IST - Israel Standard Time - UTC+2:00,以色列標準時間
CST - Central Standard Time (USA) UT-6:00 美國標準時間
CST -Central Standard Time (Australia) UT+9:30 澳大利亞標準時間
CST -China Standard Time UT+8:00 中國標準時間
CST -Cuba Standard Time UT-4:00 古巴標準時間
協調世界時(UTC)
協調世界時(英語:Coordinated Universal Time簡稱UTC)是最主要的世界時間標準,其以原子時秒長為基礎,在時刻上盡量接近于格林尼治標準時間。
協調世界時是世界上調節時鐘和時間的主要時間標準,它與0度經線的平太陽時相差不超過1秒[4],并不遵守夏令時。協調世界時是最接近格林威治標準時間(GMT)的幾個替代時間系統之一。對于大多數用途來說,UTC時間被認為能與GMT時間互換,但GMT時間已不再被科學界所確定。
閏秒
協調世界時把時間分為天、小時、分鐘和秒。通常,天是使用格里歷(公歷)定義的,但也能使用儒略日。每天包含24小時,每小時包含60分鐘。一分鐘通常有60秒,但加入了隨機的閏秒后,一分鐘可能是61秒或59秒[11]。因此,在UTC系統的時間尺度中,秒和比秒小的單位(毫秒、微秒等)其長度是固定的,但是對于分鐘和比分還大的單位(小時、天、周等),其長度是可變的。國際地球自轉服務組織(IERS)做出插入閏秒的決定,并至少在加入前6個月發布在該組織的“公告C”中[12][13] 。閏秒是無法提前很早預知的,因為地球的自轉速率是不可預測的[14]。
和 GMT 的關系
UTC = GMT +/- 0.9 s
ISO 8601
國際標準ISO 8601,是國際標準化組織的日期和時間的表示方法,全稱為《數據存儲和交換形式·信息交換·日期和時間的表示方法》。
解析
2018-05-11T06:25:05.578Z
T 代表日期和時間的連接符
Z 表示是 UTC 時間
時間戳
時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。通俗的講, 時間戳是一份能夠表示一份數據在一個特定時間點已經存在的完整的可驗證的數據。 它的提出主要是為用戶提供一份電子證據, 以證明用戶的某些數據的產生時間。 在實際應用上, 它可以使用在包括電子商務、 金融活動的各個方面, 尤其可以用來支撐公開密鑰基礎設施的 “不可否認” 服務。
- unix時間戳是從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒。
- Unix時間戳(英文為Unix epoch, Unix time, POSIX time 或 Unix timestamp)
- 是從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒。
- UNIX時間戳的0按照ISO 8601規范為 :1970-01-01T00:00:00Z.
- 一個小時表示為UNIX時間戳格式為:3600秒;一天表示為UNIX時間戳為86400秒,閏秒不計算。