Sample code for 30+ languages & platforms
Go

JSON: Access Array Values

See more JSON Examples

Demonstrates how to access values in a JSON array.

Chilkat Go Downloads

Go
    success := false

    json := chilkat.NewJsonObject()

    jsonStr := "{ \"id\": 1, \"name\": \"A green door\", \"tags\": [\"home\", 22, \"green\"], \"price\": 125 }"

    success = json.Load(jsonStr)
    if success != true {
        fmt.Println(json.LastErrorText())
        json.DisposeJsonObject()
        return
    }

    // Get the "tags" array, which contains "home", 22, "green"
    tagsArray := json.ArrayOf("tags")
    if json.LastMethodSuccess() == false {
        fmt.Println("tags member not found.")
        json.DisposeJsonObject()
        return
    }

    // Get the value at each array index. 
    // Output will be:
    // [0] = home
    // [0] as integer = 0
    // [1] = 22
    // [1] as integer = 22
    // [2] = green
    // [2] as integer = 0

    arraySize := tagsArray.Size()
    var i int
    for i = 0; i <= arraySize - 1; i++ {

        sValue := tagsArray.StringAt(i)

        fmt.Println("[", i, "] = ", *sValue)

        iValue := tagsArray.IntAt(i)
        fmt.Println("[", i, "] as integer = ", iValue)

    }

    tagsArray.DisposeJsonArray()

    // Note: The StringAt method returns the value as a string regardless of the type.

    // The IntAt method returns the value as an integer.  If the value does not convert to 
    // an integer, then 0 is returned

    json.DisposeJsonObject()