我确信我一定做了些蠢事,但我无法解决这个问题。
在Google Apps脚本中工作,我有一个像这样的对象:
test_data = { 'foo' : [1,2,3,4], 'bar': { 'something': 'value', 'something else': 'value' }, 'anotherlist' : [5,6,7,8]}
test = find('something', test_data)
for t in test:
print t
并且在函数中我想循环遍历{
"advertiserId":"123456",
"advertiserName":"Name",
"advertiserVariables":{
"U5":{
"reportName":"transaction_date",
"dataType":"STRING"
},
"U6":{
"reportName":"Page_URL",
"dataType":"STRING"
},
"U7":{
"reportName":"Custom_1",
"dataType":"STRING"
},
"U8":{
"reportName":"Custom_2",
"dataType":"STRING"
},
"U9":{
"reportName":"Custom_3",
"dataType":"STRING"
},
"U1":{
"reportName":"pageType",
"dataType":"NUMBER"
},
"U2":{
"reportName":"productName",
"dataType":"STRING"
},
"U3":{
"reportName":"productId",
"dataType":"NUMBER"
},
"U4":{
"reportName":"productCategory",
"dataType":"STRING"
}
},
"audienceSets":{
"4098242":{
"tagName":"Name - Tag",
"audienceSetName":"Visitors",
"audienceGroups":{
"productCategory":{
"variableType":"U4",
"audienceGroupName":"productCategory",
"dataType":"STRING",
"values":["category1","category2"],
"uniqueValues":2,
"active":true,
"recency":30
}
}
}
},
"shortAdvertiserName":"Name"
}
中的每个tagId
:
audienceSets
第一个日志操作是按预期返回对象,在function buildRemarketingList(parameters) {
initProfileId();
Logger.log(parameters);
for (var tagId in parameters.audienceSets) {
Logger.log(tagId);
Logger.log(parameters.audienceSets[tagId]);
}
}
中有多个对象。记录audienceSets
的第一个值也可以按预期工作。但是,我会在tag
行获得undefined
,而第二个循环不起作用。
由于parameters.audienceSets[tagId]
的值是直接从对象生成的,我不明白这是怎么回事?