Google 电子表格脚本:toString() 未返回字符串?

Google spreadsheet script: toString() not returning a string?

我正在编写一个非常简单的 google 电子表格脚本,需要比较字符串。出于某种原因,当我对单元格的内容调用 toString() 时,出现类型错误:"TypeError: Cannot find function includes in object Semester Long Clinics. (line 6)",在本例中 "Semester Long Clinics" 是单元格的实际内容。这是代码:

function getStudents(input, clinicName, columnNumber) { 
  var toPrint = []
  var i = 0; 
  for(i; i < 43; i++){
  var toCheck = input[i][columnNumber - 1].toString()
   if(toCheck.includes(clinicName)){
      toPrint.push(input[i][0].toString() + ", " + input[i][1].toString() +     ", " + input[i][2].toString())
     }
  }
  return toPrint
}

我能想到的唯一解释是输入数组包含某种反对标准 toString() 方法的对象的实例,但我不确定这样做的优点是什么。任何帮助深表感谢!

我不认为错误是由于 toString 函数引起的,而是由这个函数引起的

toCheck.includes(clinicName)

因为你的错误在第 6 行,它说找不到 object/string "Semester Long Clinics" 中包含的函数,这是 array/cell 的内容。

你可以试试这个

if( toCheck.indexOf(clinicName) != -1)

可能只是 Apps 脚本不支持函数 "includes"。