merge map
This commit is contained in:
parent
24f1bb014c
commit
3de0d54d91
28
util.go
28
util.go
|
@ -1,6 +1,7 @@
|
|||
package goutil
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
|
@ -188,3 +189,30 @@ func WeightKeyword(keywords string) string {
|
|||
|
||||
return ""
|
||||
}
|
||||
|
||||
func MergeMap(m1, m2 string) string {
|
||||
var c1 map[string]interface{}
|
||||
var c2 map[string]interface{}
|
||||
|
||||
if strings.TrimSpace(m1) == "" {
|
||||
return m2
|
||||
}
|
||||
if strings.TrimSpace(m2) == "" {
|
||||
return m1
|
||||
}
|
||||
json.Unmarshal([]byte(m1), &c1)
|
||||
json.Unmarshal([]byte(m2), &c2)
|
||||
if c1 == nil {
|
||||
c1 = make(map[string]interface{})
|
||||
}
|
||||
if c2 == nil {
|
||||
c2 = make(map[string]interface{})
|
||||
}
|
||||
|
||||
for k, v := range c2 {
|
||||
c1[k] = v
|
||||
}
|
||||
|
||||
res, _ := json.Marshal(c1)
|
||||
return string(res)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue