【发布时间】:2018-02-28 23:04:00
【问题描述】:
在谷歌电子表格单元格中我有这个文本:
{"age_max":65,"age_min":18,"flexible_spec":[{"interests":[{"id":"6002867432822","name":"Beauty"},{"id":"6002991733794","name":"Beauty & Care"},{"id":"6003177110133","name":"Natural Beauty"},{"id":"6003211042524","name":"Health and Beauty Care"},{"id":"6003393295343","name":"Health And Beauty"},{"id":"6003460329503","name":"Beautiful Skin"},{"id":"6004111438209","name":"Facial care"}]}],"genders":[2],"geo_locations":{"countries":["SK"],"location_types":["home","recent"]},"locales":[2,33],"targeting_optimization":"none","publisher_platforms":["facebook"],"facebook_positions":["feed","right_hand_column","instant_article"],"device_platforms":["mobile","desktop"]};
它来自 Facebook API 的 JSON 来自 Supermetrics。
现在我想解析这个单元格,但是这段代码不起作用:-/
我在电子表格“=parseTargeting(A1)”中使用此函数
以及脚本编辑器中的这个自定义函数。
function parseTargeting(jsonData) {
var flexible_spec = jsonData["flexible_spec"];
var maxAge = jsonData["age_max"];
var minAge = jsonData["age_min"];
var interestsBasics = jsonData["flexible_spec"][0]["interests"][0]["name"];
var interestsBasicsCelkem = jsonData["flexible_spec"][0]["interests"].length-1;
var interests = "";
var output = [];
for(var i = 0; i<=interestsBasicsCelkem; i++){
interests += jsonData["flexible_spec"][0]["interests"][i]["name"]+ "\n";
}
var returnVek = "Vek:"+minAge + " - " + maxAge+" \n";
var returnInterests = "Zájmy:"+interests;
var returnString = returnVek + returnInterests;
return returnString;
}
这个函数总是返回未定义。如果我添加此代码
" var jsonData = {"age_max":65,"age_min":18,"flexible_spec":[{"interests":[{"id":"6002867432822","name":"Beauty"},{"id":"6002991733794","name":"Beauty & Care"},{"id":"6003177110133","name":"Natural Beauty"},{"id":"6003211042524","name":"Health and Beauty Care"},{"id":"6003393295343","name":"Health And Beauty"},{"id":"6003460329503","name":"Beautiful Skin"},{"id":"6004111438209","name":"Facial care"}]}],"genders":[2],"geo_locations":{"countries":["SK"],"location_types":["home","recent"]},"locales":[2,33],"targeting_optimization":"none","publisher_platforms":["facebook"],"facebook_positions":["feed","right_hand_column","instant_article"],"device_platforms":["mobile","desktop"]};
"
发挥作用 - 然后是它的工作。但我需要这个函数来动态地从谷歌电子表格单元格中获取价值。
我不明白 :-/ 你能帮忙从 Google 电子表格单元格中解析 JSON 吗?
【问题讨论】:
标签: javascript json google-apps-script google-sheets