1. Univariate Operator
1. Operatoren selbsterlösen und selbstverlorter: in Front-End- und Heck-End unterteilt;
Pre-Type: ++ a;-a;
Post-Typ: a ++; A--;
Beispiel:
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
var a, b, i = 1, j = 1;
a = i ++;
B = ++ J;
alert ("a ="+a+", i ="+i+", b ="+b+", j ="+j); // a = 1, i = 2, b = 2, j = 2
</script>
wobei a = i ++ äquivalent zu a = i; i = i+1 ist;
Und B = ++ J, äquivalent zu J = J+1; B = J;
2. Operatoren Unary Addition und Subtraktion: a =+i; a = -i;
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
var a, b, i = 1, j = 1;
a =+i;
B = -J;
alert ("a ="+a+", i ="+i+", b ="+b+", j ="+j); // a = 1, i = 1, b = -1, j = 1
</script>
Für Ganzzahlen entspricht eine einstellige Subtraktion einer negativen Zahl.
2. Bitbetreiber
1. bitweise nicht ~ (nicht)
Nein, das heißt, alle Zahlen in binärer Form.
Häufiger Gebrauch: Bitoperation nicht im Wesentlichen eine negative Zahl und dann 1 subtrahieren
2. bitweise oder | (ODER)
Oder das heißt, alle Zahlen und Zielnummern werden bitweise oder in binärer Form betrieben.
Häufiger Gebrauch: Es wird normalerweise zur bedingungslosen Zuordnung von Binärzahlen verwendet. Zum Beispiel: Eine Zahl | 1 entspricht der ungeraden Zahl, die der aktuellen Zahl am nächsten liegt.
3. Bitwise & & (und)
Und das heißt, alle Zahlen und Zielzahlen sind bitial in binärer Form.
Häufige Verwendung: Es wird normalerweise für binäre Bit-Taking-Operationen verwendet, wie z.
4. Bitwise xor^ (xor)
Exklusiv oder bedeutet, dass alle Zahlen mit der Zielzahl in binärer Form verglichen werden. Nur zwei Zahlen sind unterschiedlich, dh nur eine Ziffern speichert 1, wenn 1 1 ist, und geben 0 zurück, wenn zwei Zahlen gleich sind.
Häufiger Gebrauch: Der inverse Betrieb des XOR -Betriebs ist selbst, dh das Endergebnis der XOR -Zahl ist zweimal unverändert. Kann für einfache Verschlüsselung oder interaktive numerische Operationen verwendet werden.
5. Links bewegen <<
Bewegen Sie sich nach links, dh alle Zahlen in binärer Form nach links, bewegen Sie die entsprechende Anzahl von Ziffern, bewegen Sie die hohe Position aus (Ablagerung) und füllen Sie die Nullposition in der niedrigen Position. Wenn Sie nach links bewegen, wird das Zeichen nicht beeinflusst.
Mathematische Bedeutung: Bei der Prämisse überflutet die Zahlen nicht über die positiven und negativen Zahlen, die Verlagerung nach links entspricht dem Multiplizieren mit 2 mit der Leistung von 1 und das Verlagerung der linken N -Bits entspricht dem Multiplizieren mit 2 mit 2.
6. Nach rechts bewegen
6.1 Signierte rechte Verschiebung >>: Verschieben Sie alle Werte in binärer Form nach rechts, behalten Sie aber die Vorzeichenbits.
Mathematische Bedeutung: Bei der Prämisse überflutet die Zahlen nicht über die positiven und negativen Zahlen, und das Verschieben von rechts entspricht der Teile von 2 auf die erste Kraft und das Verschieben von N -Bits entspricht der Teile durch 2 in die N -Leistung.
6.2 Unsigned Right Shift >>>: Das heißt, alle Werte, einschließlich Zeichenbits, in binärer Form nach rechts bewegen.
Bei positiven Zahlen sind die Ergebnisse gleich;
Bei negativen Zahlen ist das Ergebnis der nicht signierten rechten Verschiebung sehr groß, da negative Zahlen in ihrer Absolutwert -Komplement dargestellt werden.
3. Boolean Operator
1. logisch nicht logisch!
Logik ist nicht nützlich! Zeigt an, dass jeder Werttyp mit ECMascript angewendet werden kann und die logische Nichtoperation einen booleschen Wert (true/false) zurückgibt. Der Bediener wandelt seinen Operanden zunächst in einen booleschen Wert um und umgibt ihn dann.
! ! Äquivalent zur Funktion boolean ().
Eine Reihe von Regeln für die boolean () -Transformationsfunktion.
Der in true konvertierte Wert wird in False konvertiert
BooleantTruefalse
Zeichenfolge für nicht leere Zeichenfolge "" (leere Zeichenfolge)
Anzahl jeder numerische Wert ungleich Null (einschließlich Unendlichkeit) 0 und Nan
Objekt eines Objekts null
Undefiniert nein undefiniert
2. Logik und &&
Es gibt zwei Operanden für Logik und zwei Operanden.
Logik und Operationen können auf jede Art von Operanden angewendet werden, nicht nur auf Booleschen. Wenn ein Operand kein Boolescher ist, gibt Logik und Operationen nicht unbedingt einen Booleschen zurück. Zu diesem Zeitpunkt folgt es den folgenden Regeln:
1. Wenn der erste Operand ein Objekt ist, wird der zweite Operand zurückgegeben.
2. Wenn der zweite Operand ein Objekt ist, wird das Objekt nur zurückgegeben, wenn das Bewertungsergebnis des ersten Operanden wahr ist.
3. Wenn beide Operatoren Objekte sind, wird der zweite Operand zurückgegeben. Befolgen Sie die erste Regel.
4. Wenn ein Operand null ist, kehren Sie NULL zurück;
5. Wenn ein Operand Nan ist, kehren Sie Nan zurück;
6. Wenn ein Operand undefiniert ist, wird undefiniert zurückgegeben.
Logik und Vorgänge sind kurzfristige Operationen, dh wenn der erste Operand das Ergebnis bestimmen kann, wird der zweite Operand nicht erneut bewertet. (Es kann als zwei interne Rückgabereien verstanden werden). Wenn die Regeln 4, 5 und 6 Konflikte konflikt, wird das Kurzschlussbetriebsprinzip befolgt.
Die Codekopie lautet wie folgt:
var nul = null;
var na = nan;
var test;
test = na && nul;
document.write (test); // nan
Die Codekopie lautet wie folgt:
var nul = null;
var na = nan;
var test;
test = nul && na;
document.write (test); // null
3. logisch oder ||
Logisch oder hat zwei Operanden.
Logisch oder ähnlich wie Logik können Operationen auf jede Art von Operanden angewendet werden, nicht nur auf Booleschen. In dem Fall, in dem ein Operand kein Boolescher, Logik oder Betrieb ist, gibt es nicht unbedingt einen Booleschen zurück. Zu diesem Zeitpunkt folgt es den folgenden Regeln:
1. Wenn der erste Operand ein Objekt ist, wird der erste Operand zurückgegeben.
2. Wenn das Ergebnis des ersten Operanden falsch ist, wird der zweite Operand zurückgegeben.
3. Wenn beide Operatoren Objekte sind, wird der erste Operand nach der ersten Regel zurückgegeben.
4. Wenn beide Operanden null sind, geben Sie NULL zurück;
5. Wenn beide Operanden NAN sind, kehren Sie Nan zurück;
6. Wenn beide Operanden undefiniert sind, wird undefiniert zurückgegeben.
Logik oder Betrieb ist ein Kurzschlussbetrieb, dh wenn das erste Operand-Ergebnis wahr ist, wird der zweite Operand nicht erneut bewertet.
Wir können diese Eigenschaft der Logik verwenden oder vermeiden, Null- oder undefinierte Werte an Variablen zuzuweisen
Zum Beispiel: var myObject = firstObject || SecondObject
Wenn FirstObject nicht null ist, wird MyObject FirstObject zugewiesen, andernfalls wird der Wert von SecondObject MyObject zugeordnet.
Der obige Inhalt dreht sich nur um diesen Artikel. Ich hoffe, er wird für alle hilfreich sein