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

时间:2017-02-28 20:30:17

标签: javascript google-sheets google-spreadsheet-api

我正在撰写一个非常简单的谷歌电子表格脚本,需要比较字符串。出于某种原因,当我在单元格的内容上调用toString()时,我得到一个类型错误:“TypeError:找不到包含在对象Semester Long Clinics中的函数。(第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()方法,但我不确定它的优点是什么。任何帮助深表感谢!

1 个答案:

答案 0 :(得分:2)

我认为错误不是由于toString函数而是由于此函数

toCheck.includes(clinicName)

由于您的错误在第6行,并且它说无法找到对象/字符串“Semester Long Clinics”中的函数include,这是该数组/单元格的内容。

你可以试试这个

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

应用程序脚本不支持“包含”功能。