一般的な scalar 型は空文字列、0、ブール値、または null に近い placeholder で表されます。名前付き/inline のネスト構造体は展開され、slice は 1 要素の配列、map は空オブジェクトになります。これは実用的な形状プレビューであり、完全な Go compiler や encoding/json runtime ではありません。
このテーマに関するよくある疑問と回答をまとめました。
Go構造体は名前付きフィールドを持つ型付きデータ構造を定義し、JSONはテキストベースのデータ形式です。Goのencoding/jsonパッケージは、フィールド名またはjson構造体タグを使用して構造体フィールドをJSONキーにマッピングします。このコンバーターは構造体定義に一致するサンプルJSON出力を生成します。
コンバーターはjson構造体タグを読み取ってJSONキー名を決定します。例えば、`json:"user_name"` タグが付いたフィールドはJSON出力で "user_name" として表示されます。`json:"-"` タグが付いたフィールドは省略されます。jsonタグがない場合、フィールド名がそのまま使用されます。
名前付きのネスト構造体、inline struct、struct の slice は形状プレビューとして対応します。map は型だけでは実際のキーが分からないため空オブジェクトで表します。embedded や高度に動的な Go パターンは、変換後に手動確認が必要です。
いいえ、Go 構造体から JSON への変換はブラウザ内で完全に実行されます。お客様の Go 構造体定義は JavaScript でローカルに解析され、サーバーへ送信されることはありません。