Priorità degli operatori JavaScript
- Pagina precedente Espressioni regolari JS
- Pagina successiva Eccezioni JS
La priorità degli operatori (Operator Precedence) descrive l'ordine di esecuzione delle operazioni nell'espressione aritmetica.
La priorità degli operatori di moltiplicazione (*) e divisione (/) è superiore a quella degli operatori di somma (+) e sottrazione (-).
Esempio
Come nella matematica tradizionale, viene eseguita prima l'operazione di moltiplicazione:
let x = 100 + 50 * 3;
Quando si utilizzano parentesi tonde, viene calcolato prima l'operazione all'interno delle parentesi tonde:
let x = (100 + 50) * 3;
Le operazioni con la stessa priorità (ad esempio * e /) vengono calcolate da sinistra a destra:
let x = 100 / 50 * 3;
Valore di priorità dell'operatore
L'espressione tra parentesi viene calcolata prima della parte rimanente dell'espressione, e la funzione viene eseguita prima che il risultato venga utilizzato nell'espressione rimanente:
Priorità | Operatore | Descrizione | Esempio |
---|---|---|---|
18 | ( ) | Espressione di raggruppamento | (100 + 50) * 3 |
17 | . | proprietà membro | person.name |
17 | [] | proprietà membro | person["name"] |
17 | ?. | catena opzionale ES2020 | x ?. y |
17 | () | chiamata di funzione | myFunction() |
17 | new | creazione con parametri | new Date("June 5,2022") |
16 | new | creazione senza parametri | new Date() |
operatore di incrementazionel'incremento postfisso viene eseguito prima dell'incremento prefisso. |
|||
15 | ++ | incremento postfisso | i++ |
15 | -- | decremento postfisso | i-- |
14 | ++ | incremento prefisso | ++i |
14 | -- | decremento prefisso | --i |
operatore NOT |
|||
14 | ! | negazione logica | !(x==y) |
14 | ~ | negazione bitwise | ~x |
operatore unario |
|||
14 | + | unario somma | +x |
14 | - | unario negazione | -x |
14 | typeof | tipo di dati | typeof x |
14 | void | valore nullo valutato | void(0) |
14 | delete | rimozione dell'attributo | delete myCar.color |
operatore aritmeticol'operazione esponenziale viene eseguita prima della moltiplicazione. moltiplicazione e divisione vengono eseguite prima di addizione e sottrazione. |
|||
13 | ** | operazione esponenziale ES2016 | 10 ** 2 |
12 | * | moltiplicazione | 10 * 5 |
12 | / | divisione | 10 / 5 |
12 | % | rimanendo della divisione | 10 % 5 |
11 | + | aggiunta | 10 + 5 |
11 | - | sottrazione | 10 - 5 |
11 | + | concatenazione | "Bill" + "Gates" |
operatore di shift |
|||
10 | << | shift a sinistra | x << 2 |
10 | >> | shift a destra (signed) | x >> 2 |
10 | >>> | shift a destra (unsigned) | x >>> 2 |
operatore di relazione |
|||
9 | in | proprietà dell'oggetto | "PI" in Math |
9 | instanceof | istanza dell'oggetto | x instanceof Array |
operatore di confronto |
|||
9 | < | minore | x < y |
9 | <= | minore o uguale | x <= y |
9 | > | maggiore | x > y |
9 | >= | maggiore o uguale | x >= Array |
8 | == | uguale | x == y |
8 | === | strettamente uguale | x === y |
8 | != | diverso | x != y |
8 | !== | strettamente diverso | x !== y |
operatore bitwise |
|||
7 | & | o bitwise and | x & y |
6 | ^ | o bitwise xor | x ^ y |
5 | | | o bitwise o | x | y |
operatore logico |
|||
4 | && | e logico | x && y |
3 | || | o logico | x || y |
3 | ?? | unione di valori nulli ES2020 | x ?? y |
operatore condizionale (ternario) |
|||
2 | ? : | Condizionale | ? "sì" : "no" |
Operatore di assegnamentoL'assegnamento viene eseguito dopo altre operazioni. |
|||
2 | = | Assegnamento semplice | x = y |
2 | : | Assegnamento colonna | x: 5 |
2 | += | Assegnamento aggiunta | x += y |
2 | -= | Assegnamento sottrazione | x -= y |
2 | *= | Assegnamento moltiplicazione | x *= y |
2 | **= | Assegnamento esponenziale | x **= y |
2 | /= | Assegnamento divisione | x /= y |
2 | %= | Assegnamento modulo | x %= y |
2 | <<= | Assegnamento spostamento a sinistra | x <<= y |
2 | >>= | Assegnamento spostamento a destra | x >>= y |
2 | >>>= | Spostamento a destra senza segno | x >>>= y |
2 | &= | Assegnamento AND bit | x &= y |
2 | |= | Assegnamento OR bit | x |= y |
2 | ^= | Assegnamento XOR bit | x ^= y |
2 | &&= | Assegnamento logico e | x &= y |
2 | ||= | Assegnamento logico o | x ||= y |
2 | => | Freccia | x => y |
2 | yield | Pausa / Ripresa | yield x |
2 | yield* | Operatore di delega yield* | Operatore di delega yield* x |
2 | ... | Operatore di espansione | ... x |
1 | , | Virgola | x, y |
- Pagina precedente Espressioni regolari JS
- Pagina successiva Eccezioni JS