我正在使用 Google Apps 脚本来使用来自 Google 文档模板上的 Google 表单(显示在响应电子表格中)的输入来生成报告。
我使用下面的代码循环遍历所有答案并在列表中总结某些答案。 (例如,如果用户回答“每日”,该问题的文本将显示在列表中。)
但是,默认情况下,生成的结果都在一行中,并用逗号分隔。我想使用 .join() 函数将分隔符从逗号更改为换行符。
Google 不断返回此错误:
类型错误:无法在对象中找到函数连接删除厨房柜台。 在onFormSubmit(代码:41)
(对象“删除厨房柜台”是指电子表格标题中显示的问题文本之一。)
我了解到 join 是核心 Javascript 函数,而不是 Google Apps 脚本。那么,我的代码有问题吗? (我是初学者)。或者此功能在 Apps 脚本中不起作用?如果是这样,还有其他功能可以工作吗?
非常感谢您的帮助!!!
我尝试将 join 函数与其他简单符号(% 或 *)一起使用,而不是换行符,以防出现问题 - 但它返回相同的错误。
for (var key in e.namedValues) {
if (e.namedValues[key][0] === 'Daily')
dailyItems.push(key.replace('[','').replace(']','').trim().join("\n"));
}
}
最佳答案
回答您的标题问题:Array.prototype.join()在 Apps 脚本中运行良好,您可以通过运行后查看编辑器日志来说服自己
function verifyJoin() {
Logger.log(["a","b","c"].join("\n"))
}
尝试像这样修改您的代码:
for (var key in e.namedValues) {
if (e.namedValues[key][0] === 'Daily') {
dailyItems.push(e.namedValues[key].join("\n"));
}
}
关于javascript - 是否有可以在 Google App Script 中使用的 .join() 替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57516720/