1

Ich schreibe ein sehr einfaches Google Spreadsheets-Skript und muss Zeichenfolgen vergleichen. Aus irgendeinem Grund, wenn ich toString() auf den Inhalt einer Zelle rufe, erhalte ich einen Typfehler: "TypeError: Kann nicht finden, dass Funktions-Includes in Objekt Semester Long Clinics. (Zeile 6)", wo in diesem Fall "Semester Long Clinics "ist der eigentliche Inhalt der Zelle. Hier ist der Code:Google-Tabellenkalkulationsskript: toString() gibt keine Zeichenfolge zurück?

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 
} 

Die einzige Erklärung, die ich denken kann, ist, dass der Eingang Array enthält Instanzen von irgendeiner Art von Objekt, das die Standard-Methode toString() widersteht, aber ich bin nicht sicher, was die Vorteile, dass wäre. Jede Hilfe wird sehr geschätzt!

Antwort

2

I ist der Fehler nicht denken aufgrund der toString Funktion eher mit dieser Funktion

toCheck.includes(clinicName) 

Da Ihr Fehler ist auf der Linie 6 und es sagt, kann nicht die Funktion enthält im Objekt/string „Semester finden Long Clinics ", das ist der Inhalt dieses Arrays/Zelle.

können Sie versuchen, diese stattdessen

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

nur könnte sein, dass die Funktion „enthält“ nicht von Apps Script unterstützt.

+0

Danke, das hat funktioniert! – MikeyS

Verwandte Themen