Priorità degli operatori JavaScript

Corso raccomandato:

La priorità descrive l'ordine di esecuzione delle operazioni negli espressioni aritmetici.

Esempio

Nella matematica tradizionale, la moltiplicazione viene eseguita prima:

let x = 100 / 50 * 3;

let x = 100 + 50 * 3;

Quando si utilizzano parentesi, le operazioni all'interno delle parentesi vengono calcolate prima:

let x = 100 / 50 * 3;

let x = (100 + 50) * 3;

Quando gli operatori hanno la stessa priorità (ad esempio + e -), vengono calcolati da sinistra a destra:

let x = 100 / 50 * 3;

Prova personalmente

Priorità dell'operatorePrimaEspressione tra parentesi

Calcolo delle altre espressioni.La funzione viene utilizzata come risultato per altri espressioniEsegui.

Prima Valore Operatore Descrizione
Esempio ( ) Gruppo di espressioni (100 + 50) * 3
17 . Membro car.name
17 [] Membro car["name"]
17 ?. Catena opzionale ES2020 x ?. y
17 () Chiamata di funzione myFunction()
17 new Creazione con parametri new Date("June 6,2025")
16 new Creazione senza parametri new Date()

Operatore di incrementazione

Incremento postfissoPrimaEsecuzione dell'incremento prefisso

15 ++ Incremento postfisso i++
15 -- Decremento postfisso i--
14 ++ Incremento prefisso ++i
14 -- Decremento prefisso --i

Operatore NOT

14 ! NOT logico !(x==y)
14 ~ NOT ~x

Operatore unario

14 + Aggiunta unaria +x
14 - Sottrazione unaria -x
14 typeof Tipo di dati typeof x
14 void Valutazione Void void(0)
14 delete Eliminazione proprietà delete myCar.color

Operatore aritmetico

PotenzaPrimaEsegui moltiplicazione.

Moltiplicazione e divisionePrimaEsegui addizione e sottrazione.

13 ** Potenza ES2016 10 ** 2
12 * Moltiplicazione 10 * 5
12 / Divisione 10 / 5
12 % Calcolo del resto 10 % 5
11 + Addizione 10 + 5
11 - Sottrazione 10 - 5
11 + Connessione "Bill" + "Gates"

Operatore di spostamento

10 << Spostamento a sinistra x << 2
10 >> Spostamento a destra (con segno) x >> 2
10 >>> Spostamento a destra (senza segno) x >>> 2

Operatore relazionale

9 in Proprietà dell'oggetto "PI" in Math
9 instanceof Esempio di 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 === Uguale strettamente x === y
8 != Non uguale x != y
8 !== Non uguale strettamente x !== y

Operatore posizionale

7 & Posizione AND x & y
6 ^ Posizione XOR x ^ y
5 | Posizione OR x | y

Operatore logico

4 && Logico AND x && y
3 || Logico OR x || y
3 ?? Unione di valori nulli ES2020 x ?? y

Operatore condizionale (ternario)

2 ? : Condizionale ? "sì" : "no"

Operatore di assegnamento

Assegnamento in altre operazioniDopoEsegui.

2 = Assegnamento semplice x = y
2 += Addizione assegnamento x += y
2 -= Sottrazione assegnamento x -= y
2 *= Moltiplicazione assegnamento x *= y
2 **= Potenza assegnamento x **= y
2 /= Divisione assegnamento x /= y
2 %= Calcolo del resto assegnamento x %= y
2 <<= Spostamento a sinistra assegnamento x <<= y
2 >>= Spostamento a destra assegnamento x >>= y
2 >>>= Spostamento a destra senza segno x >>>= y
2 &= Posizione AND assegnamento x &= y
2 |= Posizione OR assegnamento x |= y
2 ^= Assegnamento XOR bit x ^= y
2 &= Assegnamento logico AND x &= y
2 ||= Assegnamento logico OR x ||= y
2 : Assegnamento con due punti x : 5
2 => Freccia x => y
2 yield Pausa/Ripresa yield x
2 yield* Delegazione yield* x
2 ... Estensione ...x
1 , Virgola x, y