1.月を現在から相対的に指定する
月の指定:time.Month(month-i)
年は、自動で処理される
2.code
months := 5;
t := time.Now()
year := t.Year()
month:= int(t.Month())
day := t.Day()
for i := 0; i < months; i++ {
_time := time.Date(year, time.Month(month-i), day, 0, 0, 0, 0, time.Local)
fmt.Printf("_time\t: %v\n", _time)
}
3.結果
# date Wed Jan 5 13:54:31 JST 2022 # ./a.out _time : 2022-01-05 00:00:00 +0900 JST _time : 2021-12-05 00:00:00 +0900 JST _time : 2021-11-05 00:00:00 +0900 JST _time : 2021-10-05 00:00:00 +0900 JST _time : 2021-09-05 00:00:00 +0900 JST
4.時刻地域指定
local, _ := time.LoadLocation("Asia/Tokyo")
_time := time.Date(year, time.Month(month-i), day, 0, 0, 0, 0, local)