Метод time.Time.Location
Метод Location возвращает местоположение (часовой пояс), связанное с объектом time.Time.
Он не принимает никаких параметров и возвращает указатель на time.Location.
Полученный объект может быть использован для форматирования времени в соответствующем часовом поясе,
а также для преобразования времени в другие часовые пояса с помощью метода In.
Синтаксис
t.Location()
Пример
Давайте получим часовой пояс для текущего локального времени:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
loc := now.Location()
fmt.Println(loc)
}
Результат выполнения кода:
"Local"
Пример
Давайте создадим время в конкретном часовом поясе и проверим его местоположение:
package 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())
}
Результат выполнения кода:
"America/New_York"
Пример
Давайте сравним местоположения двух моментов времени в разных часовых поясах:
package 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())
}
Результат выполнения кода:
"false"
Смотрите также
-
метод
time.Time.In,
который преобразует время в указанный часовой пояс -
метод
time.Time.UTC,
который преобразует время в часовой пояс UTC -
метод
time.Time.Local,
который преобразует время в локальный часовой пояс -
функцию
time.LoadLocation,
которая загружает объект местоположения по имени