Verstehe das nicht (Strings, JavaScript)?
Ich verstehe nicht was ich machen muss beim sumLength.
Es funktioniert nicht, wie ich es mir denke.
3 Antworten
Die Funktion soll zwei Strings entgegennehmen und ihre jeweiligen Längen miteinander addieren. Das Ergebnis soll anschließend wieder zurückgegeben werden.
function sumLength(text1, text2) {
const sum = text1.length + text2.length;
return sum;
}
- Die Parameter text1 und text2 nehmen die beiden Argumente entgegen, die der Funktion bei Aufruf übergeben werden.
- Über das length-Property lässt sich die Länge einer Zeichenkette ermitteln.
- Die Summe der Längen wird in einer Variable sum gespeichert.
- Via return-Befehl wird das Ergebnis an den äußeren Kontext wieder zurückgegeben.
Du rufst einfach die selbe Funktion (falsch) rekursiv ohne Parameter auf.
Das kann nicht klappen.
Dein Ansatz ist komplett unlogisch.
Du sollst die Länge der beiden Strings a und b (addiert) zurückgeben.
Du machst nichts dergleichen, sondern rufst deine Funktion einfach nochmal auf.
Dem letzten Teil deines letzten Satzes kann ich nicht zustimmen. Es wird nur eine Referenz auf die Funktion zurückgegeben, doch diese nicht nochmals ausgeführt. Die log-Methode ruft folgend die toString-Methode für die erhaltene Referenz auf sumLength auf und gibt das Ergebnis (die Funktionsdefinition in Form eines Strings) in den Ausgabekanal der Konsole.
ich habe zwar noch nie javascript gebraucht. Du willst ja wissen wieviele buchstaben dein string hat ? Somit fehlt hier was:
Möglichkeit :
function sumLenght(a, b){
var output = a + b; //nicht sicher ob das hier gebraucht wird
return output;
}
console.log(sumLenght.lenght);
Du kommst auf diese Weise zwar zu dem richtigen Ergebnis, aber Sinn der Anwendung sollte es eigentlich sein, dass die Funktion die Berechnung durchführt. Andernfalls macht sie doch nicht das, was ihr Name (den ich eigentlich eher aussagekräftiger formulieren würde, als es die Aufgabenstellung wohl tut) verspricht und bei jedem Aufruf müsstest du das length-Property noch einmal hinten anhängen.
Was kann ich machen?