在 Go 中获取前 3 个月的第一个和最后一个日期

Has*_*934 0 time go

如何在 Go 中获取过去 3 个月的第一个和最后一个日期?例子:

{"start": "2020-05-01", "end": "2020-07-31"}
Run Code Online (Sandbox Code Playgroud)

ttr*_*asn 6

您可以使用 golangtime包。

currentTime := time.Now()

last3Month := currentTime.AddDate(0,-3,0)

goneDaysOfMonth := last3Month.Day()

firstDay := last3Month.AddDate(0,0,-goneDaysOfMonth+1)
lastDay  := last3Month.AddDate(0,3,-goneDaysOfMonth)

timeLayout := "2006-01-02"

fmt.Println(firstDay.Format(timeLayout))
fmt.Println(lastDay.Format(timeLayout))
Run Code Online (Sandbox Code Playgroud)

去游乐场