Google apps script 如何在google apps脚本中缓存2D数组?

Google apps script 如何在google apps脚本中缓存2D数组?,google-apps-script,Google Apps Script,我一直在尝试缓存google工作表(“SubmissionsTable”)。对于缓存为空的第一次运行,一切正常。但是在从缓存读取的后续运行中,“SubmissionsTable”将只包含第一行,而所有其他行都将被删除。我附加了代码,以防误解。 例如: 运行1:在拼接后读取文件提交表=[[1,2,3],[a,b,c]] 运行2:从缓存读取提交表=[1,2,3] 编辑:按原样运行此代码应该会重现问题。如果您感兴趣,这是从中获取数据的工作表: 这似乎表明: function trycache() {

我一直在尝试缓存google工作表(“SubmissionsTable”)。对于缓存为空的第一次运行,一切正常。但是在从缓存读取的后续运行中,“SubmissionsTable”将只包含第一行,而所有其他行都将被删除。我附加了代码,以防误解。 例如:

运行1:在拼接后读取文件
提交表=[[1,2,3],[a,b,c]]

运行2:从缓存读取
提交表=[1,2,3]

编辑:按原样运行此代码应该会重现问题。如果您感兴趣,这是从中获取数据的工作表:


这似乎表明:

function trycache() {
  const a =[[1,2,3],[4,5,6],[7,8,9]];
  let cs=CacheService.getScriptCache();
  cs.put('mykey',JSON.stringify(a));
  const b=JSON.parse(cs.get('mykey'));

  Logger.log(b[0][2]);
}

Execution log
10:28:23 AM Notice  Execution started
10:28:24 AM Info    3.0
10:28:23 AM Notice  Execution completed

它可以处理任何可以加载JSON.stringify()然后再加载JSON.parse的内容。()恢复。缓存在您的中未定义example@Cooper谢谢你的帮助!是的,这只是我代码中的一小口,不是全部。它就像PropertiesService一样,它将所有内容保存为字符串。如果你想提高获得答案的机会,我建议你始终提供一个。谢谢你的时间和帮助!对不起或者没有正确检查JSON.stringify
function trycache() {
  const a =[[1,2,3],[4,5,6],[7,8,9]];
  let cs=CacheService.getScriptCache();
  cs.put('mykey',JSON.stringify(a));
  const b=JSON.parse(cs.get('mykey'));

  Logger.log(b[0][2]);
}

Execution log
10:28:23 AM Notice  Execution started
10:28:24 AM Info    3.0
10:28:23 AM Notice  Execution completed