Arithmetische Operatoren+ - * / % () Abnormale Situation 1: Operationen mit speziellen Wertliteralen
5/Unendlich=0 5%Unendlich=5 Unendlich%5=NaN Unendlich+5=Unendlich Unendlich / Unendlich = NaN Unendlich – Unendlich = NAN Unendlich % Unendlich = NAN Operationen mit Sonderwerten werden in der Arbeit nicht verwendet und haben keine praktische Anwendungsbedeutung, Sie sollten sie jedoch verstehen, falls Sie in Vorstellungsgesprächen auf sie stoßen. Abnormale Situation 2: Andere Datentypen sind an mathematischen Operationen beteiligt.+-Operation mit Zeichenfolgen (einschließlich des Falls, in dem sich nur auf einer Seite des Symbols Zeichen befinden): Das +-Zeichen wird zu einem Bindestrich, der Vorder- und Rückseite verbindet, um die gesamte Zeichenfolge zu bilden. Zum Beispiel: var a = 3 - "36" % 5 + "2" - 2 konsole.log(a) var b = "36" % 5 console.log(b) var c = 3 - "36" % 5 + "2" console.log(c) Ausgabe:
Implizite Konvertierung: Mit Ausnahme der +-Operation mit Zeichenfolgen konvertiert der Computer in anderen Fällen, wenn alle anderen Datentypen an mathematischen Operationen beteiligt sind, andere Datentypen automatisch in numerische Typen, bevor er an der Operation teilnimmt. In diesem Prozess müssen keine Methoden wie parseInt() und Number() verwendet werden. Der Prozess wird heimlich durchgeführt. Dies ist ein impliziter Konvertierungsprozess. Implizite Konvertierung Andere Datentypen werden implizit in numerische Typen konvertiert:
VergleichsoperatorenWird auch als relationaler Operator bezeichnet. Ein Vergleichsoperator vergleicht seine Operanden und gibt einen booleschen Wert zurück. Das Ergebnis der Operation ist entweder wahr oder falsch.
Abnormaler Fall 1: Spezielle Werte nehmen an Vergleichsoperationen teil
Unendlich == Unendlich -> Wahr Unendlich === Unendlich -> Wahr Unendlich > Unendlich -> Falsch Unendlich >= Unendlich ->Wahr Abnormale Situation 2: Andere Datentypen nehmen an Vergleichsoperationen teil (ausgenommen String-zu-String-Vergleiche)Auch andere Datentypen werden zum Vergleich implizit in Zahlen umgewandelt. „123“→123 wahr→1 falsch→0 null→0 undefiniert→NaN „“→0 „abc“→NaN Die Beurteilung von Null ist etwas Besonderes: Wenn Null und 0 beurteilt werden, ist Gleichheit falsch, >= und <= sind wahr null == undefiniert -> Wahr Abnormale Situation 3: String-zu-String-VergleichEs erfolgt keine implizite Konvertierung in Zahlen, sondern die beiden Zeichenfolgen werden in Unicode-Reihenfolge verglichen. Zeichenkodierungsreihenfolge: von vorne nach hinten 0-9, AZ, az, die vordere ist kleiner als die hintere Beim Vergleichen ist die Länge der beiden Zeichenfolgen nicht wichtig. Der Vergleich beginnt beim ersten Zeichen und wird fortgesetzt, bis die Größe ermittelt ist. Es werden keine weiteren Vergleiche durchgeführt. Logische OperatorenLogische Operatoren werden häufig zwischen Booleschen Werten verwendet; wenn die Operanden beide Boolesche Werte sind, ist der Rückgabewert ebenfalls ein Boolescher Wert.
Abnormale Situation
Regeln für die implizite Konvertierung in Boolesche Werte
Wenn sie auf nicht-boolesche Werte verwendet werden, kann der Rückgabewert ein nicht-boolescher Wert sein. Tatsächlich ist dieser Vorgang sehr einfach:
Logische Operatorreihenfolge der Operation Umfassende Operationsreihenfolge: NICHT, UND, ODER Zuweisungsoperatoren
Unäre Operatoren
Die Symbole ++ oder -- können vor oder nach einer Variablen geschrieben werden. Unterschiedliche Positionen können zu unterschiedlichen Ergebnissen bei der Programmausführung führen. Nehmen wir ++ als Beispiel:
Beispiel 1 var a = 3; var b = a++; var c = ++a; konsole.log(a,b,c) Ausgabe:
Beispiel 2 Ausgabe: OperationsprioritätPriorität von der höchsten zur niedrigsten:
Beispiel var a = 4; var num = 1 * (2 + 3) && a++ || 5 > 6 && 7 < 8 || !9; console.log(Nummer) Ausgabe:
ZusammenfassenDamit ist dieser Artikel mit der Zusammenfassung der fehleranfälligen Operatorberechnungen in JavaScript abgeschlossen. Weitere relevante Inhalte zu JavaScript-Operatorberechnungen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.18
Die Javascript-Funktion zum Konvertieren von <t...
Inhaltsverzeichnis 1. Docker-Image 2. Erstellen S...
Wenn ein Index die Werte aller abzufragenden Feld...
Erstellen Sie Ihre erste Webseite in einer Minute...
Inhaltsverzeichnis 1. Der Unterschied zwischen Üb...
Aus beruflichen Gründen ist es oft nicht möglich,...
In Dockerfile können run, cmd und entrypoint zum ...
Die Pseudoklasse „Before/After“ entspricht dem Ei...
Inhaltsverzeichnis 1. Einleitung 2. Implementieru...
Nachdem Sie Docker auf dem Linux-Server installie...
Die Barrierefreiheit von Webseiten scheint etwas z...
Zunächst lautet der HTML-Code zum Einbetten des Vi...
1. Erstellen Sie eine Testtabelle CREATE TABLE `t...
Im Vergleich zu vue2 verfügt vue3 über ein zusätz...
Inhaltsverzeichnis Das Grundkonzept der Modularit...