日期與時間

今日複習了一下在JS中日期與時間的基本知識

在ECMAScript中, 月份是由0算起。

// 基本的new Date() 將會返回一個帶UTC偏移的詳細時間資訊
let time = new Date()
// Aug 06 2017 00:21:21 GMT+0800 (CST)

new Date(2015, 0) // 2015年1月1日, 12:00 A.M.
new Date(2015, 1, 14)  // 2015年2月14日, 12:00 A.M.
new Date(2015, 3, 15, 14) // 2015年4月15日, 2:00 P.M.
new Date(2015, 3, 15, 14, 30) // 2015年4月15日, 2:30 P.M.

日期可以直接比較

let time1 = new Date(1996, 2, 1)
let time2 = new Date(2012, 2, 2)
time1 > time2  // false
time1 < time2 // true

使用 Date.UTC 取得時間毫秒

let ms = Date.UTC(2017, 7, 5)
// 1501891200000

// 可搭配 new Date
let d = new Date(ms)
// Sat Aug 05 2017 08:00:00 GMT+0800 (CST)

從時間實例中取得各個時間資訊

let d = new Date(Date.UTC(2017, 7, 5))

// 年
d.getFullYear()  // 2017

// 月
d.getMonth()     // 7   (由0算起, 7為八月)

// 號
d.getDate()        // 5

// 星期
d.getDay()          // 6

// 時
d.getHours()      // 8

// 分
d.getMinutes()    // 0

// 秒
d.getSeconds()    // 0

// 毫秒
d.getMilliseconds()  // 0

在Date物件內部, 日期是由Unix Epoch (UTC 1970年1月1日)算起, 並且使用毫秒表示

當有複雜時間處理需求時, 可以考慮使用 Moment.js

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 为何叫做 shell ? shell prompt(PS1) 与 Carriage Return(CR) 的关系?...
    Zero___阅读 3,213评论 3 49
  • 前几日调整服务器缓存功能代码时为方便处理时间戳,存储时将日期时间转为秒数的整数格式,使用的编程语言是 Ruby 当...
    二石兄阅读 6,137评论 3 9
  • 仿熊猫直播,PandaTVDemo 数据抓取的是熊猫客户端,直播源用的是手机网页端,暂无法连接弹幕服务器。下面是效...
    smanx阅读 391评论 0 3
  • “慈母手中线,游子身上衣。临行密密缝,意恐迟迟归……”,每当我读着这首诗,我就会想起我的妈妈。我的妈妈慈祥、勤劳、...
    煜百草园阅读 562评论 0 1
  • 那天早上,车凡正要去上班,电话响了,一个陌生女人的声音:“我是市场卖饼干这档的档主,你妈在市场买东西时觉得头晕,这...
    铱甜阅读 1,151评论 0 0