亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Google Script / Javascript includes()函數在預期有效輸入時不匹配

Google Script / Javascript includes()函數在預期有效輸入時不匹配

嗶嗶one 2023-03-24 14:01:41
我正在努力弄清楚為什么我在這里使用的 Javascript includes() 函數不匹配并返回true. 該代碼在 Google 表格上的 Google 腳本中用于填充一些單元格值。這是完整腳本中的相關代碼:const currentYear = getCurrentYear();//Get current year from active sheet namefunction getCurrentYear(){  year = sheetName.slice(-7, -2);  return year; //returns "2020"}//Return Current Control File IDfunction getCurrentControlFileId(){    const controlFolder = DriveApp.getFolderById(controlFolderId);  const controlFiles = controlFolder.getFiles();    while (controlFiles.hasNext()){    let controlFile = controlFiles.next();    let currentControlFileName = controlFile.getName(); // Evaluates to "CONTROL 2020"    let searchString = `${currentYear}`; // Evaluates to "2020"    //Have also tried:    //let searchString = currentYear;         if (currentControlFileName.includes(searchString)){      let controlFileId = controlFile.getId();      return controlFileId;    }  }  }controlFile.getName().includes(searchString)false即使controlFile.getName()值為“CONTROL 2020”且searchString值為“2020”,也會返回。兩者都是字符串。if如果我像這樣在語句條件中手動輸入“2020” :controlFile.getName().includes("2020")它返回 true 并按預期工作,返回 ID 字符串。我也嘗試過 wrapping currentYearand controlFile.getName()inString()但它仍然返回 false。我真的看不出這里有什么問題,希望得到一些幫助。
查看完整描述

1 回答

?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

很可能year包括一個空白空間

您可以使用 仔細檢查它Logger.log(year.length);

請注意,當使用array.slice(start, end)時,結束索引是結果中未包含的第一個元素。因此,如果您期望輸出“2020”(對應于year.length=4):

end-start應該等于4。

如果您的工作表名稱類似于您應該修改to"XXX 2020 YY"的定義year

year = sheetName.slice(-7, -3);


查看完整回答
反對 回復 2023-03-24
  • 1 回答
  • 0 關注
  • 114 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號