Вложенный запрос jQuery к JSON API с помощью Google charts

#javascript #jquery #json #api #google-visualization

#javascript #jquery #json #API #google-визуализация

Вопрос:

У меня есть этот JSON из API, и я хочу получить «Значение» и «Дату» из данных только из первых «данных».

Проблема в том, что он берет только первые цифры из каждого «Datos» с помощью [Data [0].Дата], [Data [0].Значение] (код ниже). Как я могу сделать, чтобы получить все значения только из первого и второго отдельно.

 "Datos":[
    {
        "Date":"2020-11-01",
        "Value":100
    },
    {
        "Date":"2020-10-01",
        "Value":101
    },
    {
        "Date":"2020-09-01",
        "Value":102
        
    },
]
"Datos":[
    {
        "Date":"2020-11-01",
        "Value":1%
    },
    {
        "Date":"2020-10-01",
        "Value":2%
    },
    {
        "Date":"2020-09-01",
        "Value":3%
        
    },
]
 

Я использую этот код:

 <script>
    function drawLineChart() {
        $.ajax({
            url:         "url",
            dataType:    "json",
            type:        "GET",
            contentType: "application/json; charset=utf-8",
            success:     function (data) {
                var arrSales = [ [ 'Month', 'Sales Figure' ] ];
    
                $.each(data, function (index, value) {
                    arrSales.push([ value.Datos[0].Date, value.Datos[0].Value ]);
                });
            }
        })
    }
</script>
 

Спасибо!!

Комментарии:

1. Привет, json, который вы добавили в свой пост, является результатом data ?

2. Нет, это данные API url. Откуда я хочу получить, как объяснено. Спасибо!

3. Можете ли вы объединить их? или измените имена ключей, поскольку оба имени ключа одинаковы, т.е. : Data ?

4. Да, это может сбить с толку. Я уже изменил его, но концептуально проблема остается той же.

Ответ №1:

это должно получить все данные с первого Datos data ввода…

 function drawLineChart() {
    $.ajax({
        url:         "url",
        dataType:    "json",
        type:        "GET",
        contentType: "application/json; charset=utf-8",
        success:     function (data) {
            var arrSales = [ [ 'Month', 'Sales Figure' ] ];

            if (data.length > 0) {
              $.each(data[0].Dataos, function (index, value) {
                  arrSales.push([ value.Date, value.Value ]);
              });
            }
        }
    })
}