我正在努力弄清楚为什么我在这里使用的 Javascript includes() 函数不匹配并返回true. 该代码在 Google 表格上的 Google 脚本中用于填充一些单元格值。这是完整脚本中的相关代码:
const currentYear = getCurrentYear();
//Get current year from active sheet name
function getCurrentYear(){
year = sheetName.slice(-7, -2);
return year; //returns "2020"
}
//Return Current Control File ID
function 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。我真的看不出这里有什么问题,希望得到一些帮助。
哔哔one
互换的青春
随时随地看视频慕课网APP
相关分类