golang 获取map类型的值时报错的解决办法:type interface {} does not support indexing

此处有个map类型的变量,打印结果如下:

fmt.Println(data)

[map[market_uni:0 short_name:生鲜 short_name_ch:生鲜 short_name_en:AB stock:0028]]
 

fmt.Println(data["stock"])

如果直接获取其中key的值,会报错:


 

发现data是interface类型的map,因此获取stock,需要使用如下方式:

data.(map[string]interface{})["stock"]