我一直在尝试没有成功地从数组中获得唯一的值,创建数组后从getRespondentEmail在谷歌应用程序脚本。我试过使用set方法,forEach等,每次它返回一个空数组或空花括号。这是我的代码的一个示例:
function test(){
var form = FormApp.openById('...');
form.setCollectEmail(true);
var formResponses = form.getResponses();
var getEmails = [];
var uniqueResponses = [...new Set(getEmails)];
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
var oneEmail = formResponse.getRespondentEmail();
getEmails.push(oneEmail);
}
Logger.log(uniqueResponses);
}
有谁知道问题是什么吗?我卡住了。非常感谢。
在您的脚本中,如何修改以下内容?
修改脚本:
function test(){
var form = FormApp.openById('...');
form.setCollectEmail(true);
var formResponses = form.getResponses();
var getEmails = [];
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
var oneEmail = formResponse.getRespondentEmail();
getEmails.push(oneEmail);
}
var uniqueResponses = [...new Set(getEmails)];
Logger.log(uniqueResponses);
}
- 在您的脚本中,当
var uniqueResponses = [...new Set(getEmails)]
运行时,getEmails
没有值。这样,问题就出现了。在本次修改中,getEmails
有对应值后,改为var uniqueResponses = [...new Set(getEmails)]
。这样,重复的值将被删除。 参考: