Type assertion извлекает конкретный тип из значения интерфейса, а type switch разветвляется в зависимости от основного типа интерфейса. Это способ получить конкретную информацию о типе из интерфейса (особенно пустого интерфейса / any).
Type assertion — извлечение конкретного типа
i {} =
s := i.()
fmt.Println(s)
n := i.()
