JSON Unmarshal

novtopro · · 2898 次点击
``` if obj.EnabledGlobalColor { } ``` V.S. ``` if obj.EnabledGlobalColor == 1 { } ``` 个人觉得上面那种好。和1比较没有说服我。不过非常感谢你提供的建议。
#4
更多评论
不建议这么搞吧。真要搞,这里有一个思路 ```go package main import "fmt" import "encoding/json" func main() { var strjson = `{"isok":1,"name":"polaris"}` var model = struct { Name string `json:"name"` IsOk intbool `json:"isok"` }{} err := json.Unmarshal([]byte(strjson), &model) if err != nil { fmt.Println(err) return } fmt.Println(model.IsOk, model.Name) } type intbool bool func (this *intbool) UnmarshalJSON(data []byte) error { if "1" == string(data) { *this = intbool(true) } else { *this = intbool(false) } return nil } ```
#1
谢谢你的回复。为什么不建议呢?
#2