SyntaxError: отсутствует) после списка аргументов (строка 28, файл Code.gs)

Я работаю над скриптом приложений Google и обнаружил ошибку, которую не могу решить. ошибка возникает в конце этой строки return ContentService.createTextOutput (спасибо ...

Я не могу понять ошибку. пожалуйста, помогите мне. ниже полный код

var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/1CIdq1anGwzUrfrNNd08NtgTR-QeHUDHgb4HOlnobmkk/edit#gid=0");
var sheet = ss.getSheetByName("Examiners");

function doGet(e){
  var action  = e.parameter.action;
  
  if(action == "in")
    return verified(e);
}

function doPost(e){
  var action  = e.parameter.action;
  
  if(action == "in")
    return verified(e);  
}

function verified(e){
  var id = e.parameter.id;
  var values = sheet.getRange(2,1,sheet.getLastRow(),1).getValues();
  
  for(var i = 0 ; i<values.length ; i++){
    if(values[i][0] == id){
      i=i+2;
      var verified = Utilities.formatDate(new Date(), "EAT", "HH:mm:ss");
      sheet.getRange(i,3).setValue(verified);
      var fullname = sheet.getRange(i,2).getValue();
      return ContentService.createTextOutput("Thank You" (fullname)"is verified at" (verified)).setMimeType(ContentService.MimeType.TEXT);
    }
    }
    
  }
  return ContentService.createTextOutput("Id Not Found").setMimeType(ContentService.MimeType.TEXT);
}

person Niraj Bachheta    schedule 11.08.2020    source источник
comment
Ваш код действительно плохо отформатирован. Это не вопрос о какой-то ошибке или ошибке, которую вы получаете. В вашем коде много разных ошибок форматирования.   -  person soMario    schedule 11.08.2020


Ответы (2)


В вашем стиле было несколько ошибок, одна из которых заключалась в том, как вы объединяете строки. Вы использовали: "Thank You" (fullname)"is verified at" (verified), однако это синтаксическая ошибка, так как вам нужен + для соединения нескольких переменных / строк в строку или использования строки шаблона, у вас есть два варианта:

  • Использование +: "Thank You " + fullname + " is verified at " + verified
  • Использование строк шаблона (примечание: они заключаются не в кавычки, а в обратные кавычки): `Thank You ${fullname} is verified at ${verified}`

Это то, что я думаю о том, что вы имеете в виду, но я не уверен в последнем возврате, поскольку он был помещен вне какой-либо функции, я просто на одну строку в последней функции:

var sheet = ss.getSheetByName("Examiners");

function doGet(e) {
    var action = e.parameter.action;

    if (action == "in")
        return verified(e);
}

function doPost(e) {
    var action = e.parameter.action;

    if (action == "in")
        return verified(e);
}

function verified(e) {
    var id = e.parameter.id;
    var values = sheet.getRange(2, 1, sheet.getLastRow(), 1).getValues();

    for (var i = 0; i < values.length; i++) {
        if (values[i][0] == id) {
            i = i + 2;
            var verified = Utilities.formatDate(new Date(), "EAT", "HH:mm:ss");
            sheet.getRange(i, 3).setValue(verified);
            var fullname = sheet.getRange(i, 2).getValue();
            return ContentService.createTextOutput("Thank You" + fullname + "is verified at" + verified).setMimeType(ContentService.MimeType.TEXT);
        }
    }
    return ContentService.createTextOutput("Id Not Found").setMimeType(ContentService.MimeType.TEXT);
}

Кроме того, я предлагаю вам лучше отформатировать свой код. Вы пользуетесь редактором? Многие редакторы могут автоматически форматировать ваш код, что делает его более читаемым.

person Zer0    schedule 11.08.2020

Заменять

return ContentService.createTextOutput("Thank You" (fullname)"is verified at" (verified)).setMimeType(ContentService.MimeType.TEXT);

by

return ContentService.createTextOutput("Thank You" + fullname + "is verified at" + verified ).setMimeType(ContentService.MimeType.TEXT);

Ресурсы

person Rubén    schedule 12.08.2020