我正在编写一个非常简单的谷歌电子表格脚本,需要比较字符串。由于某种原因,当我对单元格的内容调用 toString() 时,出现类型错误:“TypeError: Cannot find functionincludes 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 行,并且它表示找不到对象/字符串“Semester Long Clinics”中包含的函数,这是该数组/单元格的内容。
你可以试试这个
if( toCheck.indexOf(clinicName) != -1)
可能是 Apps 脚本不支持“includes”函数。
关于javascript - Google 电子表格脚本 : toString() not returning a string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42518152/