English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base JavaScript

Objet JavaScript

Fonction JavaScript

HTML DOM JS

BOM du navigateur JS

Tutoriel de base AJAX

Manuel de référence JavaScript

Priorité des opérateurs JavaScript

La priorité des opérateurs détermine la manière dont ils s'interprètent les uns les autres.

L'opérateur ayant une priorité plus élevée deviendra l'opérande de l'opérateur ayant une priorité plus faible.

Dans l'exemple suivant, la priorité de la multiplication est supérieure à celle de l'addition, ce qui détermine le résultat de l'opération.

// Tout d'abord, ajouter3Multiplier5, puis ajouter10
var x = 10 + 3 * 5;
Testons pour voir‹/›

En revanche, si nous voulons exécuter d'abord l'addition, nous devons la regrouper dans des parenthèses, qui ont toujours la priorité la plus élevée.

// Tout d'abord, ajouter10Et3Ajouter, puis multiplier5
var x = (10 + 3) * 5;
Testons pour voir‹/›

Lorsque vous utilisez des parenthèses, il faut d'abord calculer l'opération à l'intérieur des parenthèses.

Lorsque de nombreux opérateurs ont le même niveau de priorité (par exemple, l'addition et la soustraction), ils sont calculés de gauche à droite :

var x = 10 + 3 - 5;
Testons pour voir‹/›

L'associativité en JavaScript

L'évaluation de l'expression est également influencée par la propriété d'associativité.

L'associativité indique la direction de l'évaluation de l'expression (de droite à gauche ou de gauche à droite).

Si deux ou plusieurs opérateurs d'un même niveau de priorité apparaissent dans une expression, lequel sera calculé en premier? La propriété d'associativité répond à cette question.

Veuillez consulter le tableau suivant pour résoudre tout problème de correspondance ou de priorité lié à JavaScript

OpérateurDescription d'utilisationAssociation des opérateursPriorité des opérateurs
()Méthode/Appel de fonction, groupageDe gauche à droiteLe plus haut- 1
[]Accès aux tableauxDe gauche à droite1
.Accès aux propriétés de l'objetDe gauche à droite1
++IncrémentationDe droite à gauche2
--DécrémentationDe droite à gauche2
-Soustraction
De droite à gauche2
!Non logiqueDe droite à gauche2
~Non binaireDe droite à gauche2
deleteSupprimer une valeur d'array ou une propriété d'objetDe droite à gauche2
newCréer un objetDe droite à gauche2
typeofType de données de retourDe droite à gauche2
voidNe spécifiez pas la valeur à renvoyerDe droite à gauche2
/DivisionDe gauche à droite3
*MultiplicationDe gauche à droite3
%ResteDe gauche à droite3
+AdditionDe gauche à droite4
+Concaténation de chaînesDe gauche à droite4
-SoustractionDe gauche à droite4
>>Déplacement à droite binaireDe gauche à droite5
<<Déplacement à gauche binaireDe gauche à droite5
>Plus, plus ou égalDe gauche à droite6
<, <=Moins, moins ou égalDe gauche à droite6
==ÉgalitéDe gauche à droite7
!=InégalitéDe gauche à droite7
===Concordance/Égalité stricte (types de données identiques)De gauche à droite7
!==Incohérence/Inégalité stricte (types de données différents)De gauche à droite7
&ET binaireDe gauche à droite8
^XOR binaireDe gauche à droite9
|OU binaireDe gauche à droite10
&&ET logiqueDe gauche à droite11
||OU logiqueDe gauche à droite12
?:Branche conditionnelleDe gauche à droite13
=AffectationDe droite à gauche14
*=, /=, %=, +=,, -=, <<=, >>=, >>>=, &=, ^=, |=Affectation en fonction de l'opérateur précédentDe droite à gauche14
,Évaluation multipleDe gauche à droiteLe plus bas :15