2026年3月27日 星期五

golang時間格式範例導向

最近小編在用golang寫工具,ai寫出一段

time.Now().Format("15:04:05")

想說為什麼不是以前看到習慣的yyyy-MM-dd HH:mm:ss,查了一下原來是go特有的「範例導向」,也不是隨便寫什麼數字都可以,去查了一下對應表

年份2006 (長), 06 (短)剛好是 6

月份01, 1, Jan, January剛好是 1

日期02, 2, _2 (靠右對齊)剛好是 2

小時15 (24h), 03 (12h)剛好是 3 (PM)

分鐘04剛好是 4

秒數05剛好是 5

星期Mon, Monday剛好是 7 (一週的開始)

所以正常年月日時分秒也可以這樣寫

time.Now().Format("2006/01/02 15:04:05")

這種設計的優點

  1. 直覺性:你寫出來的格式,看起來就像是最終輸出的樣子。

  2. 減少錯誤:不再需要爭論 MM 是月份還是 mm 是分鐘,看數字就能秒懂。

  3. 易讀性:程式碼中 Format("2006-01-02") 的意圖比 Format("yyyy-MM-dd") 更加清晰。


是很直觀拉,只是又要多記一些東西,覺得有趣,就紀錄一下


沒有留言:

張貼留言