package main
import (
"encoding/json"
"fmt"
)
func main() {
s := `[` + `{"name":"bingoo"},{"name":"dingoo"}` + `]`
var arr []interface{}
if err := json.Unmarshal([]byte(s), &arr); err != nil {
panic(err)
}
m := map[string]interface{}{"key1": arr, "key2": s, "key3": json.RawMessage([]byte(s))}
jso, err := json.Marshal(m)
if err != nil {
panic(err)
}
// {"key1":[{"name":"bingoo"},{"name":"dingoo"}],"key2":"[{\"name\":\"bingoo\"},{\"name\":\"dingoo\"}]","key3":[{"name":"bingoo"},{"name":"dingoo"}]}
fmt.Println(string(jso))
}