Подтвердить что ты не робот

Что такое значение `zero` для time.Time в Go?

В случае ошибки я попытался вернуть nil, который выдает ошибку:

cannot use nil as type time.Time in return argument

Что такое zero значение для time.Time?

4b9b3361

Ответ 1

Вызов пустого литерала struct time.Time будет возвращать нулевую дату. Таким образом, для следующего оператора печати:

fmt.Println(time.Time{})

Вывод:

0001-01-01 00:00:00 +0000 UTC

Для полноты официальная документация прямо указывается:

Нулевое значение типа Time - 1 января, год 1, 00: 00: 00.000000000 UTC.

Ответ 2

Вместо этого вы должны использовать функцию Time.IsZero():

func (Time) IsZero

func (t Time) IsZero() bool
IsZero reports whether t represents the zero time instant, January 1, year 1, 00:00:00 UTC.