目錄
簡介
DateTime
Duration
總結
時間和日期是我們經常會在程式中使用到的對象。但是對時間和日期的處理因為有不同時區的原因,是以一直以來都不是很好用。就像在java中,為時間和日期修改和新增了多次API,那麼作為新生的語言dart而言,會有什麼不一樣的地方嗎?
dart中關于日期和時間的兩個非常重要的類是DateTime和Duration.
其中DateTime表示的是時間,而Duration表示的是時間差。
先看一下DateTime的使用。
DateTime表示的是一個時間點。因為世界時鐘有UTC和本地時間兩種。是以,在使用DataTime的時候,也可以使用這兩種時鐘。
最簡單的就是擷取目前的時間:
如果要建立指定日期的時間,則可以将年月日傳入DateTime的構造函數:
注意,上面建立的日期是本地日期。
如果要建立UTC time,則可以使用DateTime.utc方法:
還有一種表示時間的方法是unix time, Unix time指的是從1970年1月1日開始所經過的秒數.
DateTime有兩種表示Unix time時間的方法,分别是:
他們的差別在于,一個表示的是微秒,一個表示的是毫秒。
DateTime還可以将字元串轉換成為DateTime對象:
事實上,DateTime.parse可以接受多種字元類型,如下所示:
Duration表示的是兩個時間之間的內插補點。
來看下Duration的構造函數:
可以看到Duration可以表示從天到microseconds的間隔,已經足夠用了. 應該怎麼使用呢?
同樣的,我們可以對還可以減去Duration:
當然還可以計算兩個日期的內插補點:
以上就是dart中對時間和日期的支援。
本文已收錄于 http://www.flydean.com/17-dart-date-time/ 最通俗的解讀,最深刻的幹貨,最簡潔的教程,衆多你不知道的小技巧等你來發現! 歡迎關注我的公衆号:「程式那些事」,懂技術,更懂你!