Gleichheitsvergleiche in JavaScript verstehen
Bei der Arbeit mit Zeichenfolgen in JavaScript ist es wichtig zu verstehen, wie Gleichheitsvergleiche funktionieren. Mit dem folgenden Codeausschnitt soll überprüft werden, ob eine bestimmte Zeichenfolge leer ist, weniger als oder gleich 9 Ziffern oder bis zu 10 Ziffern hat. Allerdings führen die bedingten Anweisungen im Snippet zu unerwarteten Ergebnissen.
if (str = '') { console.log("The string cannot be blank"); } else if (str.length <= 9) { console.log("The string must be at least 9 characters long"); } else if (str.length <= 10) { console.log("The string is long enough."); }
Unabhängig von der Eingabezeichenfolge gibt das Programm stets „Die Zeichenfolge muss mindestens 9 Zeichen lang sein“ aus. Dieses Verhalten ist auf die falsche Verwendung des Gleichheitssymbols (=) für Gleichheitsvergleiche zurückzuführen.
Fehler: Vermischung von Zuweisung und Gleichheit
In JavaScript ist das Gleichheitssymbol (= ) wird in erster Linie für Zuordnungen und nicht für Gleichheitsvergleiche verwendet. Gleichheitsvergleiche sollten mit den Operatoren doppelt gleich (==) oder dreifach gleich (===) durchgeführt werden.
Richtiger Code für den Gleichheitsvergleich:
Die richtige Version des Codeausschnitts sollte die entsprechenden Gleichheitsoperatoren wie folgt verwenden:
if (str === '') { console.log("The string cannot be blank"); } else if (str.length <= 9) { console.log("The string must be at least 9 characters long"); } else if (str.length <= 10) { console.log("The string is long enough."); }
Der überarbeitete Code überprüft die Länge der Zeichenfolge mithilfe der richtigen Operatoren und stellt das erwartete Verhalten der Ausgabe unterschiedlicher Nachrichten basierend auf dem Inhalt der Zeichenfolge bereit.
Das obige ist der detaillierte Inhalt vonWarum verhält sich mein JavaScript-Code beim Überprüfen der Stringlänge falsch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!