Différence entre i++ et ++i en JavaScript

Tahseen Tauseef 12 octobre 2023
  1. Opérateurs d’incrémentation et de décrémentation en JavaScript
  2. Opérateur d’incrémentation Postfix vs Préfixe en JavaScript
Différence entre i++ et ++i en JavaScript

Cet article du didacticiel explique en détail les opérateurs d’incrémentation et de décrémentation.

Opérateurs d’incrémentation et de décrémentation en JavaScript

Les opérateurs d’incrémentation et de décrémentation sont utilisés pour augmenter ou diminuer la valeur d’une variable de 1. Ces opérateurs d’incrémentation et de décrémentation peuvent être écrits de plusieurs manières, et chaque manière a ses propriétés, ce qui signifie qu’elles ne sont pas les mêmes. Nous voyons généralement ces opérateurs dans les boucles et sommes très familiers avec leur utilisation dans les boucles.

Voici les deux manières les plus courantes d’utiliser les opérateurs d’incrémentation et de décrémentation :

  • ++variable (Préfixe)
  • variable++ (Postfixe)
  • --variable (Préfixe)
  • variable-- (Postfixe)

Ces deux méthodes d’opérateurs d’incrémentation/décrémentation sont identiques dans la mesure où elles mettent à jour la valeur de la variable de 1. Cependant, si on y regarde de près, elle a ses différences.

Dans l’exemple suivant, nous allons utiliser la méthode Prefix pour utiliser l’opérateur d’incrémentation et comprendre son fonctionnement.

var i = 5;
alert(++i);
alert(i);

Dans le code mentionné ci-dessus, la valeur initiale de la variable i est 5, et dans la ligne suivante, nous avons utilisé un message d’alerte pour montrer le fonctionnement de l’incrément de préfixe. Maintenant, l’alerte obtiendra la valeur de i après l’incrément. Ainsi, l’alerte générera la valeur de i comme 6. Et la ligne suivante, qui a une alerte pour i, renverra la même valeur que l’alerte précédente, 6.

Jetons un coup d’œil à la méthode postfix d’utilisation des opérateurs d’incrémentation.

var i = 5;
alert(i++);
alert(i);

Dans ce segment de code, nous avons un opérateur d’incrémentation de suffixe, qui est utilisé dans une alerte. La valeur initiale de la variable i est 5, et l’opérateur d’incrément en fera 6.

Cependant, si vous utilisez l’opérateur d’incrémentation suffixe dans une alerte, vous remarquerez que l’alerte aura la valeur i comme avant, qui est 5 ; aucun incrément n’est visible ici.

Mais à la ligne suivante, où l’alerte est utilisée pour obtenir la valeur de i, elle aura une nouvelle valeur incrémentée de 1. La nouvelle valeur sera donc 6.

Ici, la méthode de préfixe incrémente d’abord la variable de 1, puis est récupérée par l’alerte. Cependant, dans le suffixe, la valeur de la variable i est récupérée avant l’incrément, donc la première alerte affiche la même valeur qu’avant.

Et une fois la première alerte exécutée, la valeur de la variable i est mise à jour et récupérée par le prochain message d’alerte.

Une autre façon d’écrire l’opérateur d’incrémentation est

> i = i + 1;

Cette méthode est la même que la méthode du préfixe et est utilisée si nous voulons changer le nombre d’incréments. Regardons l’exemple suivant.

var i = 5;
i = i + 1
alert(i);

Dans cet exemple, la variable i est incrémentée de 1. Ainsi au moment où l’alerte essaie de récupérer la valeur de la variable i, la variable enverra la nouvelle valeur incrémentée, et la première alerte aura une sortie de la valeur 6. Cette méthode est la même que la méthode du préfixe, et avant que la valeur ne soit récupérée, l’opération d’incrémentation a lieu.

Opérateur d’incrémentation Postfix vs Préfixe en JavaScript

Voici un exemple complexe utilisant différentes manières d’utiliser les opérateurs d’incrémentation :

var i = 5;
var j = 10;
alert(i++);        // shows 5
alert(j++);        // shows 10
alert(++i);        // shows 7
alert(++j);        // shows 12
alert(i = i + 1);  // shows 8
alert(i);          // shows 8

Nous avons utilisé plusieurs opérateurs d’incrémentation dans ce segment de code, et chaque ligne a sa sortie écrite sous forme de commentaire. L’incrément de suffixe est utilisé dans les première et deuxième alertes, de sorte que la valeur de la variable est incrémentée une fois que l’alerte l’a récupérée.

De même, les alertes affichent la valeur après incrémentation dans les troisième et quatrième messages d’alerte en tant qu’opérateur d’incrémentation de préfixe.

Dans certaines langues, le suffixe et le préfixe n’ont pas de différence, mais en JavasScript, ils ont le même objectif si vous n’êtes pas concerné par le résultat immédiat. Cependant, si vous avez un programme JavaScript qui a besoin des résultats immédiats, alors la différence entre le suffixe et le préfixe est que :

Postfix (i++) : renvoie d’abord la valeur de la variable i++ puis incrémente la variable

Préfixe(i--) : renvoie la valeur de la variable i-- après l’incrémentation de la variable.

Article connexe - JavaScript Operator