zoukankan      html  css  js  c++  java
  • go语言json转map

    package util
    
    import (
    	"encoding/json"
    	"fmt"
    )
    // json转map函数,通用
    func JSONToMap(str string) map[string]interface{} {
    
    	var tempMap map[string]interface{}
    
    	err := json.Unmarshal([]byte(str), &tempMap)
    
    	if err != nil {
    		panic(err)
    	}
    
    	return tempMap
    }
    
    • 如果map中含有数组,并且数组中是数字,需要求和,如何去做
    rain = "{"reqTime":"201911141554","startTime":"201911141555","endTime":"201911141755","series":[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.07,0.14,0.32,0.51,0.72,0.92,1.11,1.28,1.41,1.5,1.53,1.5,1.41,1.28,1.11,0.92,0.72,0.51,0.32,0.14,0.07,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0],"amendNow":"多云","amendNowwen":"Cloudy","amendNowwcode":"01","msg":"1小时后会有雪,出门记得带伞"}"
    	fmt.Println(rain)
    	// Json转map,  map[string]interface{}
    	rainMap := util.JSONToMap(rain)    // 
    	// 降雨量之和
    	sum := 0.00
    	// 遍历map中的series数组,降雨量相加
    	for _, num := range rainMap["series"].([]interface{}) {
    		sum += num.(float64) // 这里使用断言
    	}
            fmt.Println(sum)   // 结果为 17.490000000000002
    
  • 相关阅读:
    js··事件捕捉
    js中的Call()和apply()
    什么是变量提升?
    什么是作用域? 什么是作用域链?
    什么是原型链?
    js中this是什么?
    Js高级 事件冒泡
    Js高级 事件 对象
    Js高级 部分内容 面向对象
    工作期间的策划案总结(1)
  • 原文地址:https://www.cnblogs.com/lz0925/p/11836549.html
Copyright © 2011-2022 走看看