我正在尝试创建一个已解析的 json 数据的全局变量。我想在其他函数中使用全局变量json 解析效果很好,但我在创建全局变量时运气不好async function GETELEMENTS(url) { var response = await UrlFetchApp.fetch(url); var responseText = await response.getContentText(); var responseJson = JSON.parse(responseText); var elementKeys = Object.keys(responseJson.elements[0]); var data = responseJson.elements.map(e => elementKeys.map(f => { return e[f] instanceof Array ? e[f].join('|') : e[f]; })); data.unshift(elementKeys); if(data.length==0) return; } var cache = CacheService.getScriptCache(); cache.put('A', data); var cache = CacheService.getPublicCache(); return data;}返回数据的cache.get('A')本质在 哪里SpreadsheetApp.getActive().getDataRange().getDisplayValues();然后在不同的功能中,我想使用myotherfunction(cache.get('A'));
1 回答
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
你可以在每个函数data 之外声明,它会自动成为一个全局变量。
最小可重现示例:
var data;
function GETELEMENTS() {
data = 'I was defined!';
}
function myotherfunction(){
Logger.log(data); // -> output: null
GETELEMENTS();
Logger.log(data); // -> output: I was defined!
}
如果执行 myotherfunction,则在该行之后GETELEMENTS()将具有在 中定义的data值。I was defined!GETELEMENTS()
添加回答
举报
0/150
提交
取消