Heim >Web-Frontend >js-Tutorial >Warum ist in JavaScript „1' 1 gleich „11', aber „1' – 1 gleich 0?
Verstehen der Verkettungs- und Subtraktionsunterschiede in JavaScript
In JavaScript die Handhabung der Plus- ( ) und Minus- (-) Operatoren zwischen Zeichenfolgen und Zahlen ist unterschiedlich, was oft zu Verwirrung führt. Um dieses Verhalten zu verdeutlichen, schauen wir uns zwei Beispiele an:
console.log("1" + 1); // Output: "11" console.log("1" - 1); // Output: 0
String-Verkettung ( )
Bei Verwendung des Plus-Operators zwischen einer Zeichenfolge ("1") und Wenn Sie eine Zahl (1) angeben, führt JavaScript eine Zeichenfolgenverkettung durch. In diesem Fall wandelt es den numerischen Wert in eine Zeichenfolge („1“) um und hängt ihn an die vorhandene Zeichenfolge („1“) an, was zur Ausgabe „11“ führt.
Numerische Subtraktion ( -)
Bei Verwendung des Minusoperators priorisiert JavaScript jedoch numerische Operationen. Da für Zeichenfolgen keine Subtraktion durchgeführt werden kann, wird die zweite „1“ (eine Zeichenfolge) implizit in eine Zahl umgewandelt, bevor die Subtraktion durchgeführt wird. Daher subtrahiert JavaScript 1 von der numerischen 1, was zu einer Ausgabe von 0 führt.
Zusätzlicher Hinweis:
In JavaScript kann der Plus-Operator überladen werden, um beides auszuführen String-Verkettung oder numerische Addition, abhängig von den Datentypen der Operanden. Allerdings wird der Minusoperator ausschließlich für die numerische Subtraktion verwendet, weshalb er sich bei der Arbeit mit Zeichenfolgen anders verhält.
Das obige ist der detaillierte Inhalt vonWarum ist in JavaScript „1' 1 gleich „11', aber „1' – 1 gleich 0?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!