Google apps script 如何在应用程序脚本中避免mailApp的空值?
我正试图使用谷歌工作表中的谷歌应用程序脚本向我办公室的一群人发送一封自动电子邮件。我们建立了它,它工作得很好,但现在我们必须为每封电子邮件添加另一个收件人作为抄送。这也不是什么大问题,但我不知道如何忽略空值(不是所有人都有第二个人抄送)。这是我的脚本,我可能只是错误地嵌套了if语句Google apps script 如何在应用程序脚本中避免mailApp的空值?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正试图使用谷歌工作表中的谷歌应用程序脚本向我办公室的一群人发送一封自动电子邮件。我们建立了它,它工作得很好,但现在我们必须为每封电子邮件添加另一个收件人作为抄送。这也不是什么大问题,但我不知道如何忽略空值(不是所有人都有第二个人抄送)。这是我的脚本,我可能只是错误地嵌套了if语句 for (var i = 0; i <= numRows - 1; i++) { var priorityValues = priority[i][0]; var autostatValues = auto
for (var i = 0; i <= numRows - 1; i++) {
var priorityValues = priority[i][0];
var autostatValues = autostat[i][0];
if(priorityValues == 'P0' && autostatValues != 'Launched') {
// if it's P0, do something with the data.
var emailFinal = email[i][0] + '@company.com';
var ttFinal = tt[i][0] + '@company.com';
var bugFinal = bugNumber[i][0];
var sumFinal = sumtotal[i][0];
var subject = 'Please update your info';
var msg =
'<html><body>message is here
</body></html>'
;
if(tt[i][0] !== null) {
MailApp.sendEmail(emailFinal, subject, "", {htmlBody: msg, noReply:true, cc: ttFinal})}
else {
MailApp.sendEmail(emailFinal, subject, "", {htmlBody: msg, noReply:true})}
}
for(var i=0;i缺少(未分配)的值在JavaScript中不是null,它们是未定义的。对于未定义的值,tt[i][0]!==null
返回true。请参阅
解决方案:使用if(!tt[i][0])
代替if(tt[i][0]!==null)
如果(tt[i][0]!=null)
或如果(tt[i][0]!==undefined)
,代码也可以使用
但是!==
是严格比较的否定==
,它关心未定义和空之间的区别。谢谢,我没有意识到我错过了。我也忘记了切换顺序,只是编辑了原始的。我得到的问题是,它仍然会给我错误,因为“@company.com”不是电子邮件邮件地址,即使它应该被忽略,如果tt是空的。谢谢!就在你发布这篇文章的时候,我发现了。感谢@meta的快速回复