PureBasic

JSONType()

Синтаксис

Result = JSONType(JSONValue)

Описание


Возвращает тип указанного JSON-значения.

Параметры

JSONValue JSON-значение.

Возвращаемое значение

Может быть одним из следующих значений:

#PB_JSON_Null
Значение представляет собой пустое JSON-значение.
#PB_JSON_String
JSON-значение содержит строку. Для чтения строки можно использовать GetJSONString() .
#PB_JSON_Number
JSON-значение содержит число. Для чтения числа можно использовать GetJSONDouble(), GetJSONFloat(), GetJSONInteger() или GetJSONQuad().
#PB_JSON_Boolean
JSON-значение содержит булевскую переменную (логическое значение). Для чтения значения можно использовать GetJSONBoolean().
#PB_JSON_Array
JSON-значение содержит массив элементов в формате JSON. JSONArraySize() возвращает размер массива. GetJSONElement() может использоваться для получения определенного элемента массива. AddJSONElement(), RemoveJSONElement(), ResizeJSONElements() или ClearJSONElements() могут использоваться для изменения массива.
#PB_JSON_Object
JSON-значение содержит объект (набор пар ключ / значение) в формате JSON. JSONObjectSize() возвращает количество членов в объекте. GetJSONMember() возвращает значение определенного члена. ExamineJSONMembers() может использоваться для проверки значений членов. AddJSONMember(), RemoveJSONMember() или ClearJSONMembers() могут использоваться для изменения объекта.

Пример

; Процедура, которая принимает любое JSON-значение и возвращает строку
;
Procedure.s GetAnyValue(Value)
    Select JSONType(Value)
        Case #PB_JSON_Null:    ProcedureReturn "null"
        Case #PB_JSON_String:  ProcedureReturn GetJSONString(Value)
        Case #PB_JSON_Number:  ProcedureReturn StrD(GetJSONDouble(Value))
        Case #PB_JSON_Boolean: ProcedureReturn Str(GetJSONBoolean(Value))
        Case #PB_JSON_Array:  ProcedureReturn "array"
        Case #PB_JSON_Object:  ProcedureReturn "object"
    EndSelect
EndProcedure

ParseJSON(0, "[1, 2, true, null, " + Chr(34) + "hello" + Chr(34) + "]")
For i = 0 To JSONArraySize(JSONValue(0)) - 1
    Debug GetAnyValue(GetJSONElement(JSONValue(0), i))
Next i

См. также

JSONValue(), SetJSONArray(), SetJSONBoolean(), SetJSONDouble(), SetJSONFloat(), SetJSONInteger(), SetJSONNull(), SetJSONObject(), SetJSONString(), SetJSONQuad()

Поддерживаемые OS

Все

<- JSONObjectSize() - Оглавление Json - JSONValue()->