我想知道当一个结构包含另一个结构时,是否有简单的方法可以在Go中从一个结构转换为另一个结构。
例如
type Type1 struct {
Field1 int
Field2 string
}
type Type2 struct {
Field1 int
}
我知道它可以像这样处理
var a Type1{10, "A"}
var b Type2
b.Field1 = a.Field1
但是如果有很多字段,我将不得不写很多作业。有没有其他方法可以在没有多次分配的情况下处理它?</ p>
总之,javascript中有b = _.omit(a, 'Field2')
这样的内容吗?
答案 0 :(得分:2)
不直接,不。您只能在相同类型之间自由转换。
您可以针对此类问题获得各种级别的解决方案: