我不明白如何比较未编组的 JSON。例子:
package main
import (
"fmt"
"reflect"
"encoding/json"
)
func main() {
a := map[string]interface{} {"foo": 1, "bar": 2}
b := map[string]interface{} {"bar": 2, "foo": 1}
fmt.Printf("Literal B is %v, DeepEqual is %v\n", b, reflect.DeepEqual(a, b))
err := json.Unmarshal([]byte(`{"bar": 2, "foo": 1}`), &b)
if err != nil {
panic("Could not unmarshal")
}
fmt.Printf("Umarshalled B is %v, DeepEqual is %v\n", b, reflect.DeepEqual(a, b))
}
印刷
文字 B 是 map[bar:2 foo:1],DeepEqual 为真
Umarshalled B 是 map[bar:2 foo:1],DeepEqual 是假的
在 JSON 解组之后,从文字初始化的 B 和 B 有什么不同?
胡子哥哥
相关分类