Zum Hauptinhalt springen




Ich weiß, dass wir Operatoren seit der Schule kennen, da sie so einfach sind wie das Erinnern an Addition (+), Subtraktion (-), Division (/) und Multiplikation (*). Die Heute kennen Sie die Operatoren, die von der Programmiersprache JavaScript verwendet werden. Lass uns anfangen!

In diesem Kapitel konzentrieren wir uns heute darauf, die Betreiber zu kennen, die wir in unserem Schulleben nicht kannten.

Aufgabenverwalter

Beachten Sie, dass eine Zuweisung = auch ein Operator ist. Es ist in der Prioritätstabelle mit der sehr niedrigen Priorität 3 aufgeführt.

Wenn wir also eine Variable wie x = 2 * 2 + 1 zuweisen, werden zuerst die Berechnungen durchgeführt und dann = ausgewertet, wobei das Ergebnis in x gespeichert wird.

sei x = 2 * 2 + 1; Alarm (x); // 5

Es ist möglich, Aufgaben zu verketten:

sei a, b, c; a = b = c = 2 + 2; Alarm); // 4 alert (b); // 4 alert (c); // 4

Verkettete Aufgaben werden von rechts nach links ausgewertet. Zuerst wird der Ausdruck 2 + 2 ganz rechts ausgewertet und dann den Variablen ganz links zugewiesen: c, b und a. Am Ende teilen alle Variablen einen einzigen Wert.

%-Modul

Der Rest des Operators (oder des Moduls %) hat ein Erscheinungsbild, das Sie täuschen kann, da es nichts mit Prozentsätzen zu tun hat.

Das Ergebnis von a % b ist der Rest der ganzzahligen Division von a durch b.

Zum Beispiel:

alert (5 % 2); // 1 ist der Rest von 5 geteilt durch 2 alert (8 % 3); // 2 ist der Rest von 8 geteilt durch 3 alert (6 % 3); // 0 ist der Rest von 6 geteilt durch 3

Potenzierung **

Der Exponentiationsoperator ** ist eine neue Ergänzung der JS-Sprache.

Für eine natürliche Zahl b wird das Ergebnis a ** b b-mal mit sich selbst multipliziert.

Zum Beispiel:

Alarm (2 ** 2); // 4 (2 * 2) alert (2 ** 3); // 8 (2 * 2 * 2) alert (2 ** 4); // 16 (2 * 2 * 2 * 2)

Der Operator arbeitet auch für nicht ganzzahlige Zahlen von a und b, zum Beispiel:

Alarm (4 ** (1/2)); // 2 (die Potenz von 1/2 ist die gleiche wie die einer Quadratwurzel, das ist die Mathematik.) Alert (8 ** (1/3)); // 2 (die Potenz von 1/3 entspricht der einer Kubikwurzel)

Erhöhen verringern

Das Erhöhen oder Verringern einer Zahl um eins ist eine der häufigsten Zahlenoperationen.

Dafür gibt es spezielle Operatoren:

Inkrement ++ erhöht eine Variable um 1:

let counter = 2; Zähler ++; // funktioniert genauso wie counter = counter + 1, ist aber kürzer alert (counter); // 3

Die - Abnahme verringert eine Variable um 1:

let counter = 2; Zähler--; // funktioniert genauso wie counter = counter - 1, ist aber kürzer alert (counter); // 1

Wichtig:
Inkrementieren / Dekrementieren kann nur auf eine Variable angewendet werden. Ein Versuch, es für einen Wert wie 5 ++ zu verwenden, führt zu einem Fehler.

Die Operatoren ++ und - können sowohl vor als auch nach der Variablen platziert werden.

Wenn der Operator der Variablen nachgeht, wird sie als "Suffixform" bezeichnet: counter ++.
Das "Präfixformular" ist, wenn sich der Operator vor dem Zähler der Variablen: ++ befindet.
Beide Register machen dasselbe: Zähler um 1 erhöhen.

Ist da ein Unterschied? Ja, aber wir können es nur sehen, wenn wir den Rückgabewert von ++ / - verwenden.

Lassen Sie uns klarstellen. Wie wir wissen, geben alle Operatoren einen Wert zurück. Inkrementieren / Dekrementieren ist hier keine Ausnahme. Das Präfixformular gibt den neuen Wert zurück, während das Postfixformular den alten Wert zurückgibt (vor dem Inkrementieren / Dekrementieren).

Um den Unterschied zu sehen, hier das Beispiel:

let counter = 1; let a = ++ counter; // (*) alert); // zwei

Hier in der Zeile (*) erhöht der Aufrufpräfix ++ Zähler den Zähler und gibt den neuen Wert zurück, der 2 ist. Die Warnung zeigt also 2 an.

Jetzt verwenden wir das Postfix-Formular:

let counter = 1; sei a = counter ++; // (*) ++ Zähler in Zähler ändern ++ alert (a); // 1 [/ ph] In der Zeile von (*) erhöht der Postfix-Formularzähler ++ ebenfalls den Zähler, gibt jedoch den alten Wert zurück (vor dem Inkrementieren). Also die Alarm-Pectacles 1. Zusammenfassend: Wenn Sie das Inkrement / Dekrement-Ergebnis nicht verwenden, gibt es keinen Unterschied, in welcher Form Sie es verwenden: [php] let counter = 0; Zähler ++; ++ Zähler; Alarm (Zähler); // 2, die obigen Zeilen haben dasselbe gemacht

Wenn wir an dieser Stelle den Wert erhöhen und das Ergebnis des Operators verwenden möchten, benötigen wir das Präfixformular:

let counter = 0; alert (++ counter); // 1

Wenn wir inkrementieren möchten, aber den vorherigen Wert verwenden möchten, benötigen wir das Postfix-Formular:

let counter = 0; alert (counter ++); // 0

Bitweise Operatoren

Bitweise Operatoren behandeln Argumente als 32-Bit-Ganzzahlen und arbeiten auf der Ebene ihrer binären Darstellung.

Diese Operatoren sind nicht spezifisch für JavaScript. Sie werden in den meisten Programmiersprachen unterstützt.

Die Liste der Operatoren:

Y (&)
Oder (|)
XOR (^)
NEIN (~)
LINKE SCHALTUNG (<<)
RECHTE SCHALTUNG (>>)
NULL RECHTSSCHALTUNG (>>>)
Diese Operatoren werden sehr selten verwendet. Um sie zu verstehen, müssen wir uns mit der Darstellung von Zahlen auf niedriger Ebene befassen, und es wäre jetzt nicht optimal, dies zu tun. Zumal wir sie nicht so schnell brauchen werden. Wenn Sie neugierig sind, können Sie Bitwise Operators selbst recherchieren. Es wäre praktischer, dies zu tun, wenn ein wirklicher Bedarf entsteht.

Essen

Der Kommaoperator ist einer der seltensten und ungewöhnlichsten Operatoren. Es wird manchmal verwendet, um kürzeren Code zu schreiben, daher müssen wir ihn kennen, um zu verstehen, was los ist.

Mit dem Kommaoperator können wir mehrere Ausdrücke auswerten und durch ein Komma teilen. Jeder von ihnen wird ausgewertet, aber nur das Ergebnis des letzten wird zurückgegeben.

Zum Beispiel:

sei a = (1 + 2, 3 + 4); Alarm); // 7 (das Ergebnis von 3 + 4)

Hier wird der erste Ausdruck 1 + 2 ausgewertet und sein Ergebnis verworfen, dann wird 3 + 4 ausgewertet und als Ergebnis zurückgegeben.

Das Komma hat eine sehr niedrige Priorität.
Beachten Sie, dass der Kommaoperator eine sehr niedrige Priorität hat, weniger als =, sodass die Klammern im obigen Beispiel wichtig sind.

Ohne sie: Zuerst wertet a = 1 + 2, 3 + 4 + aus, addiert die Zahlen a = 3, 7, dann weist der Zuweisungsoperator = a = 3 zu, und dann wird die Zahl nach dem Komma 7 überhaupt nicht verarbeitet. also wird es ignoriert.

Warum brauchen wir einen Operator, der alles außer dem letzten Teil verwirft?

Manchmal verwenden Benutzer es in komplexeren Builds, um mehrere Aktionen in einer Zeile zu platzieren.

Zum Beispiel:

// drei Operationen in einer Zeile für (a = 1, b = 3, c = a * b; a <10; a ++) {...}

Solche Tricks werden in vielen JavaScript-Frameworks verwendet, weshalb wir sie erwähnt haben. Aber sie verbessern im Allgemeinen nicht die Lesbarkeit des Codes, daher sollten wir uns überlegen, bevor wir so schreiben.

R Marketing Digital