>백엔드 개발 >Golang >Go에서 누락된 JSON 필드를 기본값으로 처리하는 방법은 무엇입니까?

Go에서 누락된 JSON 필드를 기본값으로 처리하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-13 05:54:13392검색

How to Handle Missing JSON Fields with Default Values in Go?

Go에서 기본값을 사용하여 JSON 구문 분석

Go에서 JSON을 구문 분석할 때 누락되거나 정의되지 않은 필드가 발견되면 기본값을 할당하는 것이 바람직한 경우가 많습니다. 완전하고 일관된 데이터 표현을 보장합니다.

내장된 인코딩/json 패키지를 사용하여 이를 달성하려면, json.Unmarshal에 빈 구조체를 전달하지 마세요. 대신 기본값으로 구조체를 초기화하세요. 예를 들어 다음 구조체를 고려해 보겠습니다.

type Test struct {
    A string
    B string
    C string
}

필드 A, B, C에 대해 각각 "a", "b" 및 "c"의 기본값을 사용하여 JSON을 구문 분석할 수 있습니다. 문자열:

{"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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.