max*_*max 1 arrays go slice

有没有更好的方法将函数应用于对象的字段,然后将结果复制到新的切片?更好的我的意思是比for循环具有更好的性能.

var tmp []string
for _, value := range some_object.some_field {
    tmp = append(tmp, do_something(value))
}

就像是:

tmp := map_copy(do_something(some_object.some_field))

生成的切片为:

tmp[0] = do_something(some_object.some_value[0])
tmp[1] = do_something(some_object.some_value[1])
tmp[2] = do_something(some_object.some_value[2])
....