免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

javascript關于“時間”的一次探索-創新互聯

原文對 ISO 8601 時間格式中 T 和 Z 的表述有一些錯誤,我已經對原文進行了一些修訂,抱歉給大家造成誤解。

創新互聯長期為千余家客戶提供的網站建設服務,團隊從業經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態環境。為武昌企業提供專業的網站設計、成都做網站武昌網站改版等技術服務。擁有10多年豐富建站經驗和眾多成功案例,為您定制開發。

最近使用 sequelize 過程中發現一個“奇怪”的問題,將某個時間插入到表中后,通過 sequelize 查詢出來的時間和通過 mysql 命令行工具查詢出來的時間不一樣。非常困惑,于是研究了下,下面是學習成果。

基本概念


我們先來介紹一些可能當年在地理課上學習過的基本概念。

說起來,時間真是一個神奇的東西。以前人們通過觀察太陽的位置來決定時間(比如:使用日晷),這就使得不同經緯度的地區時間是不一樣的。后來人們進一步規定以子午線為中心,向東西兩側延伸,每 15 度劃分一個時區,剛好是 24 個時區。然后因為一天有 24 小時,地球自轉一圈是 360 度,360 度 / 24 小時 = 15 度/小時,所以每差一個時區,時間就差一個小時。

最開始的標準時間(子午線中心處的時間)是英國倫敦的皇家格林威治天文臺的標準時間(因為它剛好在本初子午線經過的地方),這就是我們常說的 GMT(Greenwich Mean Time)。然后其他各個時區根據標準時間確定自己的時間,往東的時區時間晚(表示為 GMT+hh:mm)、往西的時區時間早(表示為 GMT-hh:mm)。比如,中國標準時間是東八區,我們的時間就總是比 GMT 時間晚 8 小時,他們在凌晨 1 點,我們已經是早晨 9 點了。

但是 GMT 其實是根據地球自轉、公轉計算的(太陽每天經過英國倫敦皇家格林威治天文臺的時間為中午 12 點),不是非常準確,于是后面提出了根據原子鐘計算的標準時間 UTC(Coordinated Universal Time)。

一般情況下,GMT 和 UTC 可以互換,但是實際上,GMT 是一個時區,而 UTC 是一個時間標準。

可以在這里看到所有的時區:https://www.timeanddate.com/time/map/

所以,當我們“展示”某個時間時,明確時區就變得非常重要了。不然你只說現在是 2016-01-11 19:30:00,然后不告訴我時區,我其實是沒法準確知道時間的(當然,我可以認為這個時間是我所在時區的當地時間)。如果你說現在是 2016-01-11 19:30:00 GMT+0800,那我就知道這個時間是東八區的時間了。如果我在東八區,那時間就是 19:30,如果我在 GMT 時區,那時間就是 11:30(減掉 8 小時)。

JavaScript 中的“時間”


我們現在來介紹下 JavaScript 中的“時間”,包括:Date、Date.parse、Date.UTC、Date.now。

注:下面的代碼示例可以在 node shell 里面運行,如果你運行的時候結果和下面的不一致,那可能咱們不在一個時區:)

Date 構造器


構造時間的方法有下面幾種:

new Date();   // 當前時間
new Date(value);  // 自 1970-01-01 00:00:00 UTC 經過的毫秒數
new Date(dateString); // 時間字符串
new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

當前題目:javascript關于“時間”的一次探索-創新互聯
網站地址:http://m.newbst.com/article14/dcddde.html

成都網站建設公司_創新互聯,為您提供網站制作做網站網站內鏈網站改版域名注冊全網營銷推廣

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司