Какая структура данных схожа с JSON в Go

«Какая структура данных схожа с JSON в Go» — вопрос из категории Golang, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Go структура, схожая с JSON, — это map[string]interface{}. Она позволяет хранить данные в формате ключ-значение, где ключ — строка, а значение — любой тип (аналогично JSON).

Пример:

data := map[string]interface{}{
    "name": "Alice",
    "age":  25,
    "skills": []string{"Go", "JavaScript"},
}

Для работы с JSON часто используют struct с тегами:

type Person struct {
    Name   string   `json:"name"`
    Age    int      `json:"age"`
    Skills []string `json:"skills"`
}

Обе структуры легко конвертируются в JSON/из JSON с помощью encoding/json.