源码地址
json.Marshal()会调用typeFields函数加载struct的field,
typeFields函数会去判断该字段是否不能导出,如果不能导出且不是结构体类型,就会跳过该字段,后面在执行json编码的时候,自然看不到该字段了
从这里可以看出,这个问题跟反射其实没有关系
golang-json, 源码解释struct转json时,struct的属性字段需要大写才能转译成功
最新推荐文章于 2022-05-12 20:04:31 发布
源码地址
json.Marshal()会调用typeFields函数加载struct的field,
typeFields函数会去判断该字段是否不能导出,如果不能导出且不是结构体类型,就会跳过该字段,后面在执行json编码的时候,自然看不到该字段了
从这里可以看出,这个问题跟反射其实没有关系