[英]merge array of objects from fetched API with pagination with Google Apps Script
我正在获取一个 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...]
我想整合所有响应,就像它是一大堆对象一样。
到目前为止,我写了这个:
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
包含所需的输出; 但是,正如您所看到的,这不是动态的。 我该如何解决这个问题? 我可以使用 push 方法,但我会为每个响应返回一个新数组。
为了使您的代码“动态”,您可以在 for 循环内为每个页面使用 concat 函数。 对代码的可能修改如下所示,其中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);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.