Parsing JSON with maps in Go uses interfaces everywhere. Imagine you have the following JSON object:
{
"stuff" : [
"stuff1",
"stuff2",
"stuff3",
]
}
Go JSON , . , . , , , interface{}. , , "stuff", , . :
arr := myMap["stuff"]
, , :
arr := myMap["stuff"].([]interface{})
, , , , JSON , , string, []string. , :
{
"stuff" : [
"stuff1",
"stuff2",
3
]
}
"stuff" , . - - , . , Go JSON , []interface{}. , , , , . :
arr := myMap["stuff"].([]interface{})
l := len(arr)
, , , . , , , :
arr := myMap["stuff"].([]interface{})
iv := arr[0] // interface value
sv := iv.(string) // string value
"", JSON - JSON. , Go, "" ( Go , - - , C Java, Go ).