Go でのデフォルト値を使用した JSON の解析
Go で JSON を解析し、欠落フィールドまたは未定義のフィールドが見つかった場合、デフォルト値を割り当てることが望ましい場合がよくあります。完全で一貫性のあるデータ表現を保証します。
これを実現するには、組み込みエンコード/json パッケージでは、空の構造体を json.Unmarshal に渡さないようにしてください。代わりに、構造体をデフォルト値で初期化します。たとえば、次の構造体を考えてみましょう:
type Test struct { A string B string C string }
フィールド A、B、C のデフォルト値がそれぞれ「a」、「b」、「c」であると、JSON を解析できます。 string:
{"A": "1", "C": 3}
を次の構造体に追加します:
out := Test{ A: "default a", B: "default b", // C defaults to the empty value "" }
を呼び出すことによりjson.Unmarshal(example, &out) の場合、JSON は out にアンマーシャリングされ、残りのフィールドのデフォルト値を保持しながら、指定されたフィールドを JSON の値でオーバーライドします。上記の例では、{A:1 B:default b C:3} になります。
この手法は、データの整合性を維持しながら、JSON データ解析で欠落しているフィールドを処理する簡単な方法を提供します。
以上がGo で欠落している JSON フィールドをデフォルト値で処理する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。