Opérateurs additifs ECMAScript

Dans la plupart des langages de programmation, l'opérateur d'addition (c'est-à-dire le signe plus ou moins) est généralement l'opérateur mathématique le plus simple.

Dans ECMAScript, l'opérateur d'addition comporte de nombreuses comportements spéciaux.

Opérateur d'addition

L'opérateur d'addition est représenté par le signe (+) :

var iResult = 1 + 2

Comme pour les opérateurs multiplicatifs, l'addition dans ECMAScript comporte également des comportements spéciaux lors du traitement de valeurs spéciales :

  • Si une opérande est NaN, le résultat est NaN.
  • -Infinity ajouté à -Infinity donne -Infinity.
  • Infinity ajouté à -Infinity donne NaN.
  • +0 ajouté à +0, le résultat est +0.
  • -0 ajouté à +0, le résultat est +0.
  • -0 ajouté à -0, le résultat est -0.

Cependant, si un opérande est une chaîne, les règles suivantes s'appliquent :

  • Si les deux opérandes sont des chaînes, la deuxième chaîne est ajoutée à la première.
  • Si l'un des opérandes est une chaîne, la conversion de l'autre opérande en chaîne conduit à la concaténation des deux chaînes.

Par exemple :

var result = 5 + 5;	//Deux nombres
alert(result);		//Affiche "10"
var result2 = 5 + "5";	//Un nombre et une chaîne
alert(result2);		//Affiche "55"

Ce code explique la différence entre les deux modes de l'opérateur d'addition. Dans le cas normal, 5+5 vaut 10 (valeur originale), comme montré dans les deux premières lignes du code ci-dessus. Cependant, si l'un des opérandes est remplacé par une chaîne de caractères "5", le résultat devient "55" (valeur de chaîne originale), car l'autre opérande est également converti en chaîne.

Remarque :Pour éviter une erreur courante en JavaScript, il est nécessaire de vérifier soigneusement le type de données des opérandes lors de l'utilisation de l'opérateur d'addition.

Opérateur de soustraction

L'opérateur de soustraction (-) est également un opérateur couramment utilisé :

var iResult = 2 - 1;

Comme pour l'opérateur d'addition, l'opérateur de soustraction a également des comportements spéciaux lors du traitement de valeurs spéciales :

  • Si une opérande est NaN, le résultat est NaN.
  • Infinity soustrait Infinity, le résultat est NaN.
  • -Infinity soustrait -Infinity, le résultat est NaN.
  • Infinity soustrait -Infinity, le résultat est Infinity.
  • -Infinity soustrait Infinity, le résultat est -Infinity.
  • +0 soustrait +0, le résultat est +0.
  • -0 soustrait -0, le résultat est -0.
  • +0 soustrait -0, le résultat est +0.
  • Si un opérateur n'est pas un nombre, le résultat est NaN.

Remarque :Si les opérandes sont toutes des nombres, l'opération de soustraction régulière est exécutée et le résultat est retourné.