为了账号安全,请及时绑定邮箱和手机立即绑定

golang DeepEqual:当接口映射的值类型为数组时,DeepEqual失效

golang DeepEqual:当接口映射的值类型为数组时,DeepEqual失效

Go
慕妹3242003 2021-07-27 17:28:48
package mainimport (    "encoding/json"    "fmt"    "reflect")func main() {    nodeArray := map[string]interface{}{        "meta": map[string]interface{}{            "category": "paragraph"}, "content": []string{"111"}}    // content is number as 111 or array    b, _ := json.Marshal(&nodeArray)    var nodeArrayTest map[string]interface{}    json.Unmarshal(b, &nodeArrayTest)    if !reflect.DeepEqual(nodeArray, nodeArrayTest) {        fmt.Println("!!!! odeArray and nodeArrayTest should be equal")    } else {        fmt.Println("odeArray and nodeArrayTest equal")    }}为什么当接口映射有数组(内容为数字为111或数组)时,DeepEqual的返回为false?当内容值为字符串、地图时,DeepEqual 为真。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 181 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信