Priorité des opérateurs JavaScript
- Page précédente Expression régulière JS
- Page suivante Exceptions JS
Operator precedence (Operator Precedence) describes the order of execution of operations in arithmetic expressions.
The precedence of operators (*) and (/) is higher than that of addition (+) and subtraction (-).
Example
As with traditional mathematics, multiplication is performed first:
let x = 100 + 50 * 3;
When using parentheses, calculate the operations inside the parentheses first:
let x = (100 + 50) * 3;
Operations with the same precedence (such as * and /) are calculated from left to right:
let x = 100 / 50 * 3;
Operator precedence values
Expressions in parentheses are calculated before the rest of the expression, and functions are executed before the results are used in the rest of the expression:
Precedence | Operator | Description | Example |
---|---|---|---|
18 | ( ) | Expression grouping | (100 + 50) * 3 |
myFunction() | . | [] | . |
myFunction() | person.name | [] | appartenance au membre |
myFunction() | person["name"] | ?. ES2020 | chaîne optionnelle |
myFunction() | x ?. y | () | appelle de la fonction |
myFunction() | 16 | 17 | création avec paramètres |
new Date("June 5,2022") | 16 | new | création sans paramètres |
new Date()opérateurs d'incrémentation |
|||
i++ | ++ | l'incrémentation suffixée est exécutée avant l'incrémentation préfixée. | incrémentation suffixée |
i++ | -- | 13 | i-- |
14 | ++ | incrémentation préfixée | ++i |
14 | -- | décrémentation préfixée | --i |
opérateur NOT |
|||
14 | ! | non logique | !(x==y) |
14 | ~ | non bit à bit | ~x |
opérateurs unilatéraux |
|||
14 | + | addition unilatérale | +x |
14 | - | soustraction unilatérale | -x |
14 | typeof | type de données | typeof x |
14 | void | évaluation vide | void(0) |
14 | delete | suppression de propriété | delete myCar.color |
opérateurs arithmétiquesles opérations exponentielles sont exécutées avant les opérations de multiplication. les opérations arithmétiques de multiplication et de division sont exécutées avant les opérations d'addition et de soustraction. |
|||
13 | ** | opérations exponentielles ES2016 | 10 ** 2 |
12 | * | multiplication | 10 * 5 |
12 | / | division | 10 / 5 |
12 | % | reste de la division | 10 % 5 |
11 | + | ajout | 10 + 5 |
11 | - | soustraction | 10 - 5 |
11 | + | concaténation | "Bill" + "Gates" |
opérateurs de déplacement |
|||
10 | << | déplacement à gauche | x << 2 |
10 | >> | déplacement à droite (avec signe) | x >> 2 |
10 | >>> | déplacement à droite (sans signe) | x >>> 2 |
opérateurs de relation |
|||
9 | in | propriété de l'objet | "PI" in Math |
9 | instanceof | instance de l'objet | x instanceof Array |
opérateurs de comparaison |
|||
9 | < | inférieur | x < y |
9 | <= | inférieur ou égal | x <= y |
9 | > | supérieur | x > y |
9 | >= | supérieur ou égal | x >= Array |
8 | == | égal | x == y |
8 | === | strictement égal | x === y |
8 | != | différent | x != y |
8 | !== | strictement différent | x !== y |
opérateurs de bit |
|||
7 | & | et bit à bit | x & y |
6 | ^ | ou bit à bit exclusif | x ^ y |
5 | | | ou bit à bit | x | y |
opérateurs logiques |
|||
4 | && | logique et | x && y |
3 | || | logique ou | x || y |
3 | ?? | fusion de valeurs vides ES2020 | x ?? y |
opérateur de condition (ternaire) |
|||
2 | ? : | Condition | ? "yes" : "no" |
Opérateur d'affectationL'affectation est exécutée après d'autres opérations. |
|||
2 | = | Affectation simple | x = y |
2 | : | Affectation de deux points | x: 5 |
2 | += | Affectation d'addition | x += y |
2 | -= | Affectation de soustraction | x -= y |
2 | *= | Affectation de multiplication | x *= y |
2 | **= | Affectation exponentielle | x **= y |
2 | /= | Affectation de division | x /= y |
2 | %= | Affectation de reste | x %= y |
2 | <<= | Affectation de déplacement à gauche | x <<= y |
2 | >>= | Affectation de déplacement à droite | x >>= y |
2 | >>>= | Déplacement à droite sans signe | x >>>= y |
2 | &= | Affectation logique ET | x &= y |
2 | |= | Affectation logique OU | x |= y |
2 | ^= | Affectation logique XOR | x ^= y |
2 | &&= | Affectation logique et | x &= y |
2 | ||= | Affectation logique ou | x ||= y |
2 | => | Flèche | x => y |
2 | yield | Pause / Résumé | yield x |
2 | yield* | Opérateur de délégation yield* | Opérateur de délégation yield* x |
2 | ... | Opérateur de déploiement | ... x |
1 | , | Virgule | x, y |
Veuillez également consulter
Tutoriel :Opérateurs JavaScript
Manuel de référence :Opérateurs JavaScript
- Page précédente Expression régulière JS
- Page suivante Exceptions JS