国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS操作時間 - UNIX時間戳的簡單介紹(必看篇)

2024-05-06 15:12:55
字體:
來源:轉載
供稿:網友

準備知識

GMT(Greenwich Mean Time) - 格林尼治時間。UTC(Universal Time Code) - 國際協調時間。PST(Pacific Standard Time,太平洋標準時間)。

UTC出現的比GMT時間晚,可以認為UTC時間更加精確,不過它們之間只相差幾秒鐘。

UTC開始時間為:1970-01-01T00:00:00.000Z(這種時間設置可以一直精確到毫秒,字母T和Z僅僅是一種格式)

UNIX時間戳指的是從1970-01-01T00:00:00.000Z到現在的毫秒數。(1s=1000ms)

本文需要用到的時間規定如下:

機器時間 - UNIX時間戳。(mTime)

人類時間 - 人類可讀的各種時間。(hTime)

標準字符串時間 - 1970-01-01T00:00:00.000Z(stdStrTime)

GMT時間 - Tue, 15 Aug 2017 13:58:23 GMT(gmtTime)

需求描述

我們日常生活中要表示時間,方法非常之多,打在屏幕上就是各種字符串,另外我們還要考慮到外國人表示時間的方法。比如下面這些都可以表示某個時間:

2017年8月15日20:51:22

2017.08.15

2017-08-15 AM

6/13/2004

January 12, 2004

Tue May 25 2004 00:00:00 GMT-0700

1970-01-01T00:00:00.000Z

那么問題來了,上面這些時間表示方法格式完全不統一,如果我設計個程序要求某些東西在指定時間運行,我們該怎么表示這個時間呢?在計算機編程中我們一般用一種最標準的時間表示方式:UNIX時間戳。這種時間表示方法精確到毫秒,表示方法唯一,非常適合編程處理。

核心函數

new Date()

參數可以是機器時間,參數為空時表示把當前機器時間傳入。返回值是標準字符串時間。

// 參數為空時var stdStrTime = new Date();console.log(stdStrTime);// output: 2017-08-15T14:22:08.385Zvar gmtTime = stdStrTime.toUTCString();console.log(gmtTime);// output: Tue, 15 Aug 2017 14:22:08 GMT// 參數不為空時var stdStrTime = new Date(1502769188084);console.log(stdStrTime);// output: 2017-08-15T03:53:08.084Zvar gmtTime = stdStrTime.toUTCString();console.log(gmtTime);// output: Tue, 15 Aug 2017 03:53:08 GMT

轉成GMT時間也可以用函數toGMTString(),該方法現在已經不推薦使用。

Date.parse()

參數為標準字符串時間,返回值是對應的機器時間。

var stdStrTime = "2017-08-15T03:53:08.084Z";var mTime = Date.parse(stdStrTime);console.log(mTime);// output: 1502769188084

2個問題

在JS中操作時間,和在其它語言中操作時間原理上相似,核心就是解決2個問題:

把機器時間轉成人類時間

把人類時間轉成機器時間

得到當前機器時間

console.log(Date.now());// ouput: 1502802483928

得到當前人類時間

var stdStrTime = new Date();console.log(now);            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 望谟县| 肥西县| 宣汉县| 行唐县| 台中县| 金湖县| 赤城县| 唐海县| 中江县| 察哈| 剑河县| 花莲县| 柞水县| 元朗区| 贵定县| 漾濞| 萍乡市| 平顶山市| 阜康市| 九江市| 大洼县| 本溪市| 金华市| 潮安县| 湾仔区| 云南省| 大关县| 云和县| 旌德县| 鸡东县| 五河县| 赤峰市| 历史| 剑川县| 城口县| 鄯善县| 无棣县| 巧家县| 山西省| 嫩江县| 获嘉县|