在Go語言中,操作JSON數據是非常常見的需求,有時候我們會需要打印出JSON數據中所有的key。這里我們演示一個簡單的例子:
package main import ( "encoding/json" "fmt" ) func main() { str := ` { "name": "Tom", "age": 18, "address": { "province": "Guangdong", "city": "Shenzhen" } }` var m map[string]interface{} _ = json.Unmarshal([]byte(str), &m) for k := range m { fmt.Println(k) } }
這里我們使用Go的JSON包對一個JSON字符串進行解析,并打印出所有的key,其中使用了map[string]interface{}類型作為中間數據結構。整個程序的輸出為:
address age name
由于map的遍歷是隨機的,所以輸出的順序可能與JSON字符串中的順序不一致。