Operatoren in TypeScript

Operatoren in TypeScript

Dieser Artikel erklärt Operatoren in TypeScript.

YouTube Video

Operatoren in TypeScript

Operatoren in TypeScript werden verwendet, um numerische Berechnungen, Wertvergleiche und logische Operationen durchzuführen. Da TypeScript ähnliche Operatoren wie JavaScript verwendet, sind sie einfach zu erlernen, aber TypeScript erlaubt strengere Operationen mit Typsicherheit.

Die Hauptoperatoren sind wie folgt:.

Arithmetische Operatoren

Arithmetische Operatoren werden für numerische Berechnungen verwendet.

Operator Beschreibung Beispiel Ergebnis
+ Addition 5 + 3 8
- Subtraktion 5 - 3 2
* Multiplikation 5 * 3 15
/ Division 5 / 2 2.5
% Rest 5 % 2 1
++ Inkrement (Präfix) let x = 5; ++x 6
-- Dekrement (Präfix) let x = 5; --x 4
 1let a = 10; // Initialize variable 'a' with the value 10
 2let b = 3;  // Initialize variable 'b' with the value 3
 3
 4// Perform and display arithmetic operations between 'a' and 'b'
 5console.log("Addition (a + b):      ", a + b); // 13
 6console.log("Subtraction (a - b):   ", a - b); // 7
 7console.log("Multiplication (a * b):", a * b); // 30
 8console.log("Division (a / b):      ", a / b); // 3.333...
 9console.log("Modulus (a % b):       ", a % b); // 1
10
11// Demonstrate post-increment operation on 'a'
12// Output the current value of 'a' (10), then increment
13console.log("Post-increment (a++):  ", a++);
14// Display the incremented value of 'a' (11)
15console.log("Value of 'a' after increment:", a);
16
17// Demonstrate pre-increment operation on 'a'
18// Increment 'a' first (12) then output
19console.log("Pre-increment (++a):   ", ++a);
20
21// Demonstrate post-decrement operation on 'a'
22// Output the current value of 'a' (12), then decrement
23console.log("Post-decrement (a--):  ", a--);
24// Display the decremented value of 'a' (11)
25console.log("Value of 'a' after decrement:", a);
26
27// Demonstrate pre-decrement operation on 'a'
28// Decrement 'a' first (10) then output
29console.log("Pre-decrement (--a):   ", --a);

Zuweisungsoperatoren

Zuweisungsoperatoren weisen den Wert auf der rechten Seite der Variablen auf der linken Seite zu.

Operator Beschreibung Beispiel Ergebnis
= Zuweisung x = 10 x = 10
+= Addieren und zuweisen x += 5 x = 15
-= Subtrahieren und zuweisen x -= 5 x = 5
*= Multiplizieren und zuweisen x *= 2 x = 20
/= Dividieren und zuweisen x /= 2 x = 5
%= Rest und zuweisen x %= 3 x = 1
1let z = 5;
2z += 3;
3console.log(z);  // Outputs: 8
4
5z *= 2;
6console.log(z);  // Outputs: 16

Vergleichsoperatoren

Vergleichsoperatoren vergleichen Werte und geben true oder false zurück.

Operator Beschreibung Beispiel Ergebnis
== Gleich (ohne Typvergleich) 5 == "5" true
=== Strikt gleich (einschließlich Typ) 5 === "5" false
!= Ungleich (ohne Typvergleich) 5 != "5" false
!== Strikt ungleich (einschließlich Typ) 5 !== "5" true
> Größer als 5 > 3 true
< Kleiner als 5 < 3 false
>= Größer als oder gleich 5 >= 5 true
<= Kleiner als oder gleich 5 <= 3 false
1console.log('5 == "5"   :', 5 == "5");   // Outputs: true
2console.log('5 === "5"  :', 5 === "5");  // Outputs: false
3console.log('5 != "5"   :', 5 != "5");   // Outputs: false
4console.log('5 !== "5"  :', 5 !== "5");  // Outputs: true
5console.log('5 > 3      :', 5 > 3);      // Outputs: true
6console.log('5 < 3      :', 5 < 3);      // Outputs: false
7console.log('5 >= 5     :', 5 >= 5);     // Outputs: true
8console.log('5 <= 3     :', 5 <= 3);     // Outputs: false

Logische Operatoren

Logische Operatoren werden verwendet, um logische Ausdrücke zu kombinieren.

Operator Beschreibung Beispiel Ergebnis
&& Logisches UND true && false false
|| Logisches ODER true || false true
! Negation !true false
1console.log('true && false :', true && false);  // Outputs: false
2console.log('true || false :', true || false);  // Outputs: true
3console.log('!true         :', !true);          // Outputs: false

Vorrang von logischen Operatoren

In TypeScript werden logische Operatoren normalerweise in der Reihenfolge NICHT zuerst, gefolgt von UND und schließlich ODER ausgewertet.

NICHT hat die höchste Priorität

NICHT ist ein unärer Operator und wird mit der höchsten Priorität ausgewertet.

1console.log(!true || false);  // false
UND hat Vorrang vor ODER

UND hat eine höhere Priorität als ODER, daher wird der UND-Teil zuerst ausgewertet.

1console.log(true || false && false);  // true

Daher wird der UND-Teil (&&) zuerst berechnet, und sein Ergebnis wird an ODER (||) weitergegeben.

UND und ODER führen eine Kurzschlussauswertung durch

In TypeScript führen UND und ODER eine Kurzschlussauswertung durch. Wenn das Ergebnis durch den linken Wert bestimmt wird, wird der rechte Ausdruck nicht ausgewertet.

1let a = false && console.log("This will not be printed");
2console.log(a);  // false
3
4let b = true || console.log("This will not be printed");
5console.log(b);  // true

In beiden Fällen wird console.log() nicht ausgeführt.

Vorrang explizit definieren

Die Verwendung von Klammern, um Ausdrücke explizit zu gruppieren, kann Missverständnisse bezüglich des Vorrangs vermeiden.

1console.log(true || (false && false));  // true
Unterschiede zwischen natürlicher Sprache und Programminterpretation

Beim Verwenden von logischen Operatoren ist es wichtig, sich der Mehrdeutigkeiten in der natürlichen Sprache bewusst zu sein. Zum Beispiel kann der Satz 'ein weißer Hund oder eine Katze' entweder bedeuten 'ein weißer Hund oder irgendeine Katze' oder 'ein weißer Hund oder eine weiße Katze'. Im Code kann es wie folgt geschrieben werden:.

1if (isWhite && isDog || isCat) {
2    console.log(' "A white dog" or "a cat of any color" ');
3}
4
5if (isWhite && (isDog || isCat)) {
6    console.log(' "A white dog" or "a white cat" ');
7}

Da natürliche Sprache mehrdeutig sein kann, ist Vorsicht beim Codieren und Entwerfen von Systemen geboten.

Bitweise Operatoren

Bitweise Operatoren manipulieren Zahlen auf Bit-Ebene.

Operator Beschreibung Beispiel Ergebnis
& Logisches UND 5 & 1 1
` ` Logisches ODER 5 | 1
^ Exklusives ODER (XOR) 5 ^ 1 4
~ Negation (NICHT) ~5 -6
<< Linksschieben 5 << 1 10
>> Rechtsschieben (Vorzeichenbehaftet) 5 >> 1 2
>>> Rechtsschieben (Vorzeichenlos) 5 >>> 1 2
1console.log('5 & 1  :', 5 & 1);   // Outputs: 1  (AND operation)
2console.log('5 | 1  :', 5 | 1);   // Outputs: 5  (OR operation)
3console.log('5 ^ 1  :', 5 ^ 1);   // Outputs: 4  (XOR operation)
4console.log('~5     :', ~5);      // Outputs: -6 (NOT operation)
5console.log('5 << 1 :', 5 << 1);  // Outputs: 10 (Left shift operation)
6console.log('5 >> 1 :', 5 >> 1);  // Outputs: 2  (Right shift operation)
7console.log('5 >>> 1:', 5 >>> 1); // Outputs: 2  (Unsigned right shift operation)

Ternärer Operator

Der ternäre Operator gibt verschiedene Werte basierend auf dem Ergebnis eines bedingten Ausdrucks zurück.

1let age = 20;
2let access = (age >= 18) ? "Allowed" : "Denied";
3console.log(access);  // Outputs: Allowed

Typoperatoren

TypeScripts Typoperatoren umfassen Folgendes:.

Operator Beschreibung Beispiel Ergebnis
typeof Gibt den Typ einer Variablen zurück typeof 123 "number"
instanceof Überprüft, ob ein Objekt zu einer bestimmten Klasse gehört arr instanceof Array true
is Überprüft als Typwächter, ob ein Wert einem bestimmten Typ entspricht value is string true or false
 1console.log(typeof "Hello");  // "string"
 2console.log(typeof 42);       // "number"
 3
 4let arr: number[] = [1, 2, 3];
 5console.log("arr instanceof Array : ", arr instanceof Array); // true
 6
 7// Example of Type Guard
 8function isString(value: any): value is string {
 9  return typeof value === "string";
10}
11
12let value: any = "Hello";
13if (isString(value)) {
14  console.log("Value is a string:", value);  // "Value is a string: Hello"
15}

Typoperatoren werden verwendet, um den Typ eines Wertes zu überprüfen oder ihn in einen bestimmten Typ umzuwandeln.

  • Der typeof-Operator gibt den Typ einer Variablen zurück.
  • Der instanceof-Operator überprüft, ob ein Objekt zu einer bestimmten Klasse gehört.
  • Der is-Operator wird verwendet, um zu überprüfen, ob ein Wert einen bestimmten Typ hat. Es ist Teil von TypeScripts Typwächtern.

Zusammenfassung

  • Arithmetische Operatoren: Führen grundlegende Berechnungen durch.
  • Zuweisungsoperatoren: Weisen Werte Variablen zu.
  • Vergleichsoperatoren: Vergleichen Werte.
  • Logische Operatoren: Kombinieren logische Bedingungen.
  • Bitweise Operatoren: Führen Operationen auf Bit-Ebene durch.
  • Ternärer Operator: Gibt Werte basierend auf Bedingungen zurück.
  • Typoperatoren können den Typ eines Wertes überprüfen.

In TypeScript können diese Operatoren verwendet werden, um komplexe Berechnungen und bedingte Ausdrücke effizient zu schreiben.

Sie können den obigen Artikel mit Visual Studio Code auf unserem YouTube-Kanal verfolgen. Bitte schauen Sie sich auch den YouTube-Kanal an.

YouTube Video