Opérateurs en TypeScript

Opérateurs en TypeScript

Cet article explique les opérateurs en TypeScript.

YouTube Video

Opérateurs en TypeScript

Les opérateurs en TypeScript sont utilisés pour effectuer des calculs numériques, des comparaisons de valeurs et des opérations logiques. Comme TypeScript utilise des opérateurs similaires à JavaScript, ils sont faciles à appréhender, mais TypeScript permet des opérations plus rigoureuses grâce à la sécurité des types.

Les principaux opérateurs sont les suivants :.

Opérateurs arithmétiques

Les opérateurs arithmétiques sont utilisés pour les calculs numériques.

Opérateur Description Exemple Résultat
+ Addition 5 + 3 8
- Soustraction 5 - 3 2
* Multiplication 5 * 3 15
/ Division 5 / 2 2.5
% Reste 5 % 2 1
++ Incrément (préfixe) let x = 5; ++x 6
-- Décrément (préfixe) 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);

Opérateurs d'affectation

Les opérateurs d'affectation attribuent la valeur à droite à la variable située à gauche.

Opérateur Description Exemple Résultat
= Affectation x = 10 x = 10
+= Ajouter et affecter x += 5 x = 15
-= Soustraire et affecter x -= 5 x = 5
*= Multiplier et affecter x *= 2 x = 20
/= Diviser et affecter x /= 2 x = 5
%= Reste et affecter x %= 3 x = 1
1let z = 5;
2z += 3;
3console.log(z);  // Outputs: 8
4
5z *= 2;
6console.log(z);  // Outputs: 16

Opérateurs de comparaison

Les opérateurs de comparaison comparent les valeurs et renvoient true ou false.

Opérateur Description Exemple Résultat
== Égal (sans comparaison de type) 5 == "5" true
=== Strictement égal (inclut le type) 5 === "5" false
!= Différent (sans comparaison de type) 5 != "5" false
!== Strictement différent (inclut le type) 5 !== "5" true
> Supérieur à 5 > 3 true
< Inférieur à 5 < 3 false
>= Supérieur ou égal à 5 >= 5 true
<= Inférieur ou égal à 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

Opérateurs logiques

Les opérateurs logiques sont utilisés pour combiner des expressions logiques.

Opérateur Description Exemple Résultat
&& ET logique true && false false
|| OU logique true || false true
! Négation !true false
1console.log('true && false :', true && false);  // Outputs: false
2console.log('true || false :', true || false);  // Outputs: true
3console.log('!true         :', !true);          // Outputs: false

Précedence des opérateurs logiques

En TypeScript, les opérateurs logiques sont généralement évalués dans l'ordre suivant : d'abord NOT, suivi de AND, et enfin OR.

NOT a la priorité la plus élevée

NOT est un opérateur unaire et il est évalué avec la priorité la plus élevée.

1console.log(!true || false);  // false
AND a la priorité sur OR

AND a une priorité plus élevée que OR, donc la partie AND est évaluée en premier.

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

En conséquence, la partie AND (&&) est calculée en premier, et son résultat est passé à OR (||).

AND et OR effectuent une évaluation en court-circuit

En TypeScript, AND et OR effectuent une évaluation en court-circuit. Si le résultat est déterminé par la valeur de gauche, l'expression de droite n'est pas évaluée.

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

Dans les deux cas, console.log() n'est pas exécuté.

Définir explicitement la priorité

Utiliser des parenthèses pour regrouper explicitement des expressions peut éviter des malentendus sur la priorité.

1console.log(true || (false && false));  // true
Différences entre le langage naturel et l'interprétation du programme

Lors de l'utilisation des opérateurs logiques, il est important d'être conscient des ambiguïtés du langage naturel. Par exemple, dans la phrase « un chien blanc ou un chat », cela pourrait signifier soit « un chien blanc ou n'importe quel chat », soit « un chien blanc ou un chat blanc ». En code, cela peut s'écrire comme suit :.

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}

Comme le langage naturel peut être ambigu, il est nécessaire d'être prudent lors de la programmation et de la conception de systèmes.

Opérateurs binaires

Les opérateurs binaires manipulent les nombres au niveau des bits.

Opérateur Description Exemple Résultat
& ET logique 5 & 1 1
` ` OU logique 5 | 1
^ OU exclusif (XOR) 5 ^ 1 4
~ Négation (NON) ~5 -6
<< Décalage vers la gauche 5 << 1 10
>> Décalage vers la droite (signé) 5 >> 1 2
>>> Décalage vers la droite (non signé) 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)

Opérateur Tertiaire

L'opérateur tertiaire renvoie des valeurs différentes en fonction du résultat d'une expression conditionnelle.

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

Opérateurs de type

Les opérateurs de type de TypeScript incluent les suivants :.

Opérateur Description Exemple Résultat
typeof Renvoie le type d'une variable typeof 123 "number"
instanceof Vérifie si un objet appartient à une classe spécifique arr instanceof Array true
is En tant que garde de type, vérifie si une valeur est d'un type spécifique 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}

Les opérateurs de type sont utilisés pour vérifier le type d'une valeur ou la convertir en un type spécifique.

  • L'opérateur typeof renvoie le type d'une variable.
  • L'opérateur instanceof vérifie si un objet appartient à une classe spécifique.
  • L'opérateur is est utilisé pour vérifier si une valeur est d'un type spécifique. Il fait partie des gardes de type de TypeScript.

Résumé

  • Opérateurs Arithmétiques : Effectuent des calculs de base.
  • Opérateurs d'Affection : Attribuent des valeurs aux variables.
  • Opérateurs de Comparaison : Comparent des valeurs.
  • Opérateurs Logiques : Combinent des conditions logiques.
  • Opérateurs au Niveau des Bits : Effectuent des opérations au niveau binaire.
  • Opérateur Tertiaire : Renvoie des valeurs selon des conditions.
  • Les opérateurs de type peuvent vérifier le type d'une valeur.

En TypeScript, ces opérateurs peuvent être utilisés pour écrire des calculs complexes et des expressions conditionnelles de manière efficace.

Vous pouvez suivre l'article ci-dessus avec Visual Studio Code sur notre chaîne YouTube. Veuillez également consulter la chaîne YouTube.

YouTube Video