объединить массив объектов из извлеченного API с нумерацией страниц с помощью скрипта Google Apps - PullRequest
1 голос
/ 07 января 2020

Я получаю URL. Полный ответ распространяется на пять страниц.

Я перебираю каждую страницу, которая возвращает мне массив объектов (пожалуйста, исправьте меня, если я ошибаюсь):

[{item_1=foo, item_2=bar, item_3=foobar, value_1=XX}, {item_1=bar, item_2=foo, item_3=barfoo, value_1=XX},etc...]

I хочу объединить все ответы, как если бы это был один большой массив объектов.

Пока что я написал это:

   for (i = 1; i <= total_pages; i++) {

    var rawResponse = UrlFetchApp.fetch(
    'url',
    {
      method: 'GET'
    })

   response[i] = JSON.parse(rawResponse);

    }

  var g = response[1].concat(response[2], response[3],response[4],response[5]);

g содержит желаемый вывод; однако, как вы можете видеть, это не Dynami c. Как я могу решить это? Я мог бы использовать метод pu sh, но я возвращал бы мне новый массив с каждым ответом.

1 Ответ

1 голос
/ 08 января 2020

Чтобы сделать ваш код "dynamici c" , вы можете использовать функцию concat внутри for-l oop для каждой страницы. Возможная модификация вашего кода может выглядеть следующим образом, где переменная result будет содержать все результаты:

var result = [];

for (var i = 1; i <= total_pages; i++) {
  var rawResponse = UrlFetchApp.fetch(
    'url',
    {
      method: 'GET'
    }
  );

  var current = JSON.parse(rawResponse);
  result = result.concat(current);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...