我正试图让我真正回到这样的事情:
{"map": {}}
不是{"map":null}
,但编码/ json似乎检测到这是一个空映射,只返回后一个值。
type test struct {
MyMap map[string]string `json:"map"`
}
func main() {
testval := test{}
asjson, err := json.Marshal(testval)
fmt.Println(testval)
fmt.Println(string(asjson))
}
输出就像这样
{map[]}
{"map":null}
我希望得到{"map":{}}
建议吗?我试图手动初始化地图,并使用它的参考。似乎都没有产生我想要的输出。 :/
答案 0 :(得分:9)
myvar = "'''{}'''".format(mylist)
尚未初始化,因此为test.MyMap
。初始化它将为您提供所需的结果:
nil