Javascript Object o Array - PullRequest
       2

Javascript Object o Array

0 голосов
/ 29 сентября 2018

Я пытался использовать jQuery для выполнения jQuery.parseJSON и JSON.stringify, чтобы получить ответ JSON, и я не могу получить данные, которые названы как метки.

{
    "message":"Success",
    "result":
        [
            {
                "prediction":
                    [
                        {
                            "label":"Anta",
                            "probability":0.095694885
                        },
                        {
                            "label":"Mice",
                            "probability":0.9043051
                        }
                    ]
            }
        ]
}

Я пытаюсьиспользовать ajax, чтобы принять запрос и попытаться использовать его так:

function success(name) {
         var json = jQuery.parseJSON(name);
         var jsons = JSON.stringify(name);
         console.log(json.result['prediction'].label);
    },

Ответы [ 2 ]

0 голосов
/ 29 сентября 2018

используя метод карты, чтобы получить все метки

json.result[0].prediction.map((obj)=>{return obj.label})
0 голосов
/ 29 сентября 2018

Вы можете получить доступ к массиву, используя индекс, например, 0 для первого элемента:

function success(name) {
    var json = jQuery.parseJSON(name);
    var jsons = JSON.stringify(name);
    console.log(json.result[0].prediction[0].label); // == Anta
}

Также JavaScript может анализировать JSON напрямую.Вы должны быть в состоянии сделать:

function success(name) {
    var json = JSON.parse(name);
    console.log(json.result[0].prediction[0].label); // == Anta
}

Кстати, вы можете прочитать в документе jquery:

Начиная с jQuery 3.0, $ .parseJSON устарела.Для анализа строк JSON используйте собственный метод JSON.parse.

source

Если вы хотите получить все метки:

function success(name) {
    const json = JSON.parse(name);
    const labels = json.result.map(r => r.prediction.map(p => p.label)).flat().flat();

    console.log(labels); // == Anta, Mice
}

Это решение es6, использующее map() и flat().Проверьте их документ на MSDN в случае сомнений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...