[英]Loop an array in Google Apps Scripts
我正在尝试为数组编写循环,但收到无效的字符串错误。
如果关键字=“间皮瘤| seo”
function json(keyword) {
var jsondata = UrlFetchApp.fetch("http://api.grepwords.com/lookup?apikey=carterq="+keyword);
var object = Utilities.jsonParse(jsondata.getContentText());
var results = Array("Error", "Error", "Error", "Error");
for (var i = 0; i < object.length; i++) {
results[0] = object[0].cpc;
results[1] = object[0].cmp;
results[2] = object[0].lms;
results[3] = object[0].m1;
}
return results;
}
有什么想法吗?
您的参考错误来自以下行:
var jsondata = UrlFetchApp.fetch("http://api.grepwords.com/lookup?apikey=carter&q="+keyword);
从上面的代码中,这是您唯一使用“关键字”的时刻。 您确定它返回正确的信息吗? 如果您是否考虑过循环?
假设您的var object = Utilities.jsonParse(jsondata.getContentText());
返回此:
var object = [
{cpc: 'test1', cmp: 'test2', lms: 'test3', m1: 'test4'},
{cpc: 'test5', cmp: 'test6', lms: 'test7', m1: 'test8'},
{cpc: 'test9', cmp: 'test10', lms: 'test11', m1: 'test12'}
];
我们使用您的循环:
for (var i = 0; i < object.length; i++) {
results[0] = object[0].cpc;
results[1] = object[0].cmp;
results[2] = object[0].lms;
results[3] = object[0].m1;
}
您是否意识到您从未使用过“ i”? 并在每次循环后用相同的内容覆盖结果中的内容吗? 您确定要这个吗?
function somefunc() { var object = [ {cpc: 'test1', cmp: 'test2', lms: 'test3', m1: 'test4'}, {cpc: 'test5', cmp: 'test6', lms: 'test7', m1: 'test8'}, {cpc: 'test9', cmp: 'test10', lms: 'test11', m1: 'test12'} ]; var results = Array("Error", "Error", "Error", "Error"); if (object[0] != undefined) { results[0] = object[0].cpc; results[1] = object[0].cmp; results[2] = object[0].lms; results[3] = object[0].m1; } for (var i = 0; i < object.length; i++) { results[0] = object[0].cpc; results[1] = object[0].cmp; results[2] = object[0].lms; results[3] = object[0].m1; } return results; } console.log(somefunc());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.