我正在尝试做一些超出我的初级编码能力的事情。我创建了一个将API数据解析为Google电子表格的函数,但无论我尝试过什么(并在线搜索答案),结果都只会发布到一个列中。
我目前使用的代码是:
function getAPIdata (URL,key){
var apiurl = "https://example.com/Site/"+URL+"/students?&ID="+key
var rank_data = parse(apiurl)
var result = []
var data_dictionary = rank_data.Student
for (var i in data_dictionary){
result.push(data_dictionary[i].Name)
result.push(data_dictionary[i].Grade)
}
return result
}
正在解析的数据是
Student": [
{
"Name": Adam,
"Grade": 75
},
{
"Name": Alan,
"Grade": 90
}
发生的事情是,当我在excel中调用该函数时,我得到一个列:
Adam
75
Alan
90
我想做的是拥有以下内容(此处的空格描绘另一列)
Adam 75
Alan 90
基本上,我有一个1x4输出,我想要一个2x2输出。无论如何我能做到吗?我意识到我可以两次调用该函数并每次都推送不同的数据集,但在这种情况下,我只能为所有数据调用一次API。我考虑过潜在地提取数据,缓存数据,但在我深入研究一条无法取得成果的路径之前,我希望这里的一些专家可以权衡。
感谢阅读!
答案 0 :(得分:0)
我认为你可以使用[]并一次推送一行,比如
function getAPIdata (URL,key){
var apiurl = "https://example.com/Site/"+URL+"/students?&ID="+key
var rank_data = parse(apiurl)
var result = []
var data_dictionary = rank_data.Student
for (var i in data_dictionary){
result.push([data_dictionary[i].Name, data_dictionary[i].Grade])
}
return result
}