复杂MAP取值问题

daihu · · 498 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

我有一个Map如下 { "status": "success", "data": { "resultType": "vector", "result": [{ "metric": { "__name__": "up", "alias": "xxxxx", "instance": "xxxxx", "job": "consul-prometheus" }, "value": [1562051593.673, "1"] }, { "metric": { "__name__": "up", "alias": "xxxx", "instance": "xxxxx", "job": "consul-prometheus" }, "value": [1562051593.673, "1"] }] } } 我想取value里面的每一个值与第二个值,如何取 代码只能取到result就不会了 package main import ( "encoding/json" "fmt" ) func main() { json_strnew := ` { "status": "success", "data": { "resultType": "vector", "result": [{ "metric": { "__name__": "up", "alias": "xxxxx", "instance": "xxxxx", "job": "consul-prometheus" }, "value": [1562051593.673, "1"] }, { "metric": { "__name__": "up", "alias": "xxxx", "instance": "xxxxx", "job": "consul-prometheus" }, "value": [1562051593.673, "1"] }] } } ` m := make(map[string]interface{}) err := json.Unmarshal([]byte(json_strnew), &m) fmt.Println(err) if err != nil { fmt.Println(err) } else { for k, v := range m["data"].(map[string]interface{}) { fmt.Printf("%s:%s;\n", k, v) fmt.Println(v) //for kk, vv := range v { // fmt.Printf("%s=%s;\n", kk, vv) //} } } }

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

498 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传