Метод time.Time.Date
Метод Date возвращает три компонента даты для переменной типа time.Time:
год (тип int), месяц (тип time.Month) и день (тип int).
Метод не принимает никаких параметров и используется для извлечения
календарных компонентов из временной метки.
Синтаксис
t.Date()
Пример
Давайте получим компоненты даты для текущего момента времени:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
year, month, day := now.Date()
fmt.Printf("Год: %d, Месяц: %s, День: %d\n", year, month, day)
}
Результат выполнения кода (в зависимости от текущей даты):
"Год: 2026, Месяц: September, День: 4"
Пример
Давайте создадим конкретную дату и извлечем ее компоненты:
package main
import (
"fmt"
"time"
)
func main() {
t := time.Date(2025, time.December, 25, 0, 0, 0, 0, time.UTC)
year, month, day := t.Date()
fmt.Printf("Год: %d, Месяц: %s, День: %d\n", year, month, day)
}
Результат выполнения кода:
"Год: 2025, Месяц: December, День: 25"
Пример
Давайте сравним компоненты даты для двух разных моментов времени:
package main
import (
"fmt"
"time"
)
func main() {
t1 := time.Now()
t2 := time.Date(2024, time.January, 1, 0, 0, 0, 0, time.UTC)
y1, m1, d1 := t1.Date()
y2, m2, d2 := t2.Date()
fmt.Printf("Текущая дата: %d-%s-%d\n", y1, m1, d1)
fmt.Printf("Новый год: %d-%s-%d\n", y2, m2, d2)
}
Результат выполнения кода (пример):
"Текущая дата: 2026-September-4"
"Новый год: 2024-January-1"
Смотрите также
-
метод
time.Time.Clock,
который возвращает компоненты времени (часы, минуты, секунды) -
метод
time.Time.Year,
который возвращает только год -
метод
time.Time.Month,
который возвращает только месяц -
метод
time.Time.Day,
который возвращает только день месяца