Метод time.Time.Location

Метод Location возвращает местоположение (часовой пояс), связанное с объектом time.Time. Он не принимает никаких параметров и возвращает указатель на time.Location. Полученный объект может быть использован для форматирования времени в соответствующем часовом поясе, а также для преобразования времени в другие часовые пояса с помощью метода In.

Синтаксис

got.Location()

Пример

Давайте получим часовой пояс для текущего локального времени:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  now := time.Now()
  loc := now.Location()
  fmt.Println(loc)
}

Результат выполнения кода:

go"Local"

Пример

Давайте создадим время в конкретном часовом поясе и проверим его местоположение:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  loc, _ := time.LoadLocation("America/New_York")
  t := time.Date(2026, time.September, 4, 12, 0, 0, 0, loc)
  fmt.Println(t.Location())
}

Результат выполнения кода:

go"America/New_York"

Пример

Давайте сравним местоположения двух моментов времени в разных часовых поясах:

gopackage main

import (
  "fmt"
  "time"
)

func main() {
  loc1, _ := time.LoadLocation("Europe/London")
  loc2, _ := time.LoadLocation("Asia/Tokyo")

  t1 := time.Now().In(loc1)
  t2 := time.Now().In(loc2)

  fmt.Println(t1.Location() == t2.Location())
}

Результат выполнения кода:

go"false"

Смотрите также

  • метод time.Time.In,
    который преобразует время в указанный часовой пояс
  • метод time.Time.UTC,
    который преобразует время в часовой пояс UTC
  • метод time.Time.Local,
    который преобразует время в локальный часовой пояс
  • функцию time.LoadLocation,
    которая загружает объект местоположения по имени