Sample code for 30+ languages & platforms
DataFlex

JSON Iterate Members

See more JSON Examples

Demonstrates how to loop over the immediate members of a JSON object.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoJson
    String sJsonStr
    Integer iNumMembers
    Integer i
    String sName
    String sValue
    Integer iIValue
    String sTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatJsonObject)) To hoJson
    If (Not(IsComObjectCreated(hoJson))) Begin
        Send CreateComObject of hoJson
    End

    Move '{ "id": 1, "name": "A green door", "tags": ["home", "green"], "price": 125 }' To sJsonStr

    Get ComLoad Of hoJson sJsonStr To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoJson To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComSize Of hoJson To iNumMembers

    For i From 0 To (iNumMembers - 1)

        Get ComNameAt Of hoJson i To sName
        Get ComStringAt Of hoJson i To sValue

        Showln sName ": " sValue

        Get ComIntAt Of hoJson i To iIValue
        Showln sName " as integer: " iIValue

    Loop

    // Note: The StringAt method returns the value as a string regardless of the type.
    // If the value is a JSON array (such as for ["home", "green"]), then the JSON encoding
    // of the entire array is returned.

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


End_Procedure