Опция 1
var employees []Employee session.Employees = employees
Опция 2
session.Employees = []Employee{}
В чем разница между двумя вариантами кода Голанга относительно сеанса. Работники после выполнения?
Ваша первая версия присваивает значение переменной employees session.Employees.Это будет нулевое значение типа []Employee, которое равно nil.Вы могли бы просто написать это как:
employees
session.Employees
[]Employee
nil
session.Employees = nil
Ваша вторая версия присваивает значение составного литерала , который будет пустым (длина = 0, емкость = 0), но неnil ломтик.
См. Связанные вопросы:
ноль ломтиков против не ноль ломтиков против пустых ломтиков на языке Go
Чтосмысл иметь нулевой срез и пустой срез в golang?
Правильный способ инициализации пустого среза