ASP JSON Доступ к ключу и значению в цикле

Я использую ASPJSON (https://www.aspjson.com/) для записи JSON в классическом ASP/VBScript. Затем я пытаюсь пройти через JSON и получить доступ как к ключу, так и к значению. В нынешнем виде я могу получить доступ только к значению.

JSON

Set InitialGlaDataJsonForm = New aspJSON
With InitialGlaDataJsonForm.data

    .Add "glaFormContent", InitialGlaDataJsonForm.Collection() 
    With .item("glaFormContent")

        .Add "form", "myform"
        .Add "email", "email@address"
        .Add "phone", "012345"
        .Add "name", "Joe Bloggs"

    End With

End With

JSON выглядит так

{
    "glaFormContent": {
        "form": "myform",
        "email": "email@address",
        "phone": "012345",
        "name": "Joe Bloggs"
    }
}

Цикл через JSON, доступ к значению

For Each element In InitialGlaDataJsonForm.data("glaFormContent")
     response.write InitialGlaDataJsonForm.data("glaFormContent").item(element) & "<br>"
Next

Приведенное выше возвращает значение во время каждой итерации, однако мне нужно иметь возможность получить ключ, не записывая его.

Итак, мой вопрос: как мне получить доступ к ключу так же, как к значению?

Большое спасибо

Response.Write element даст вам ключ. В ASPJSON при циклическом просмотре словаря dataelement является вашим ключом, а .item(element) дает вам значение, связанное с этим ключом.
user692942 25.11.2022 17:10

Связанный - Как получить свойство JSON из массива в aspJSON?

user692942 25.11.2022 17:16
Как сделать HTTP-запрос в Javascript?
Как сделать HTTP-запрос в Javascript?
В JavaScript вы можете сделать HTTP-запрос, используя объект XMLHttpRequest или более новый API fetch. Вот пример для обоих методов:
1
2
86
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

При повторении коллекции словарей с использованием оператора For перечислитель, используемый ASPJSON, является «ключом», в вашем случае это переменная element. Если вы используете;

Response.Write element

текущий ключ будет возвращен, вы можете использовать;

Response.Write InitialGlaDataJsonForm.data("glaFormContent").item(element)

для получения базового значения, связанного с ключом.


Полезные ссылки

Другие вопросы по теме