“;在指示之前丢失”

时间:2019-10-28 14:41:54

标签: arrays google-apps-script

在使用此代码时,出现“ ;;在指令前丢失”错误。 我相信这可能有一个简单的解释,但实际上我不明白这是怎么回事。

也尝试使用switch / case语句,但是得到相同的错误...数组可能有问题...

function motori(){

  var esito = [];

  for (var j = 6; j < 16; j++) {
    var rngRiga= foglio.getRange("AJ"+j+":BT"+j).getValues(); //store in array
    var riga = rngRiga[0].join('-'); // build a string with array
    Logger.log("riga = " + riga);    // all right till now

    if (riga.search("KOS") > -1){
      var esito[j] = "KOS";}     //<---- here highlights the error
    else if (riga.search("OKS") > -1){
      var esito[j] = "OKS";}
    else if (riga.search("AN") > -1){
      var esito[j] = "AN";}  
    else if (riga.search("OK") > -1){
      var esito[j] = "OK";}
    else if (riga.search("KO") > -1){
      var esito[j] = "KO";}


    Logger.log("result = " + esito);
    Logger.log("j = " + j);
  }
}

我需要的是一个带有if语句结果的新数组。

1 个答案:

答案 0 :(得分:0)

您的问题是由于您已经声明了变量 esito ,然后在变量中进行了声明(如果您再次声明),这将导致问题,因为尝试再次创建相同的变量。更改您的代码,如下所示:

function motori(){

  var esito = [];

  for (var j = 6; j < 16; j++) {
    var rngRiga= foglio.getRange("AJ"+j+":BT"+j).getValues(); //store in array
    var riga = rngRiga[0].join('-'); // build a string with array
    Logger.log("riga = " + riga);    // all right till now

    if(riga.search("KOS") > -1){
     esito[j] = "KOS";}     //<---- here highlights the error
    else if (riga.search("OKS") > -1){
       esito[j] = "OKS";}
    else if (riga.search("AN") > -1){
       esito[j] = "AN";}  
    else if (riga.search("OK") > -1){
       esito[j] = "OK";}
    else if (riga.search("KO") > -1){
       esito[j] = "KO";}


    Logger.log("result = " + esito);
    Logger.log("j = " + j);
  }
}