尝试将 sheet 行数据发送到 GmailApp 时缺少变量名称; Javascript/Google 应用脚本

Missing variable name while trying to send sheet row data to GmailApp; Javascript/Google App script

这里仍处于学习曲线上。我正在尝试从 google sheet 获取数据并发送数据 Gmail 应用程序,但出现缺少变量名称错误。这是我在过去 2 小时内尝试过的方法,我将感谢您帮助构建代码以使其正常工作。

function emailTheLastRow(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();  
   var range = sheet.getRange("AO2:AO"+sheet.getLastRow()).getValues();
  var searchString = "1";

  for (var i = 0; i<range.length; i++) {
  if(range[i][0] == searchString) {
   var lastRow = sheet.getRange(2+i,1,1,41).getValues();
     var data = {    
       'email':lastRow[0][1],
       'project':lastRow[0][2],
       'client':lastRow[0][3],
       'sdate':lastRow[0][4],
       'edate':lastRow[0][5],
       'loe':lastRow[0][7],
     };

      GmailApp.sendEmail("test@gmail.com", "Project", "A new project has been created with the following details: " + data());

    }
  }
}

您正在尝试将字符串与 JSON 连接起来,JSON 是对象而非字符串。使用 stringify 函数 [1] 将对象转换为字符串。在声明 data 变量后添加此行:

 data = JSON.stringify(data);

[1] https://www.w3schools.com/js/js_json_stringify.asp