English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Gli operatori eseguono operazioni matematiche e logiche sugli operandi forniti.
JavaScript ha i seguenti tipi di operatori:
Operatori aritmetici
Operatori di assegnazione
Operatori di confronto
Operatori bitwise
Operatori logici
Operatori di stringa
Operatore condizionale (ternario)
Operatori unari
Operatori di relazione
Gli operatori aritmetici vengono utilizzati per eseguire operazioni aritmetiche sui numeri.
Gli operatori aritmetici considerano i numeri come operandi e restituiscono un singolo valore numerico.
Operatore | Descrizione | Esempio | Definizione | Prova a fare un test |
---|---|---|---|---|
+ | Addizione | a + b | La somma di a e b | Prova a fare un test |
- | Sottrazione | a-b | La differenza tra a e b | Prova a fare un test |
* | Moltiplicazione | a * b | Il prodotto di a e b | Prova a fare un test |
** | Calcolare il potere | a ** b | Il potere di a a | Prova a fare un test |
/ | Divisione | a / b | a diviso b | Prova a fare un test |
% | Calcolare il modulo (resto) | a % b | Il resto di a / b | Prova a fare un test |
++ | Aumento | a ++ | a aumenta di 1 | Prova a fare un test |
-- | Diminuzione | a-- | a diminuisce di 1 | Prova a fare un test |
L'operatore di assegnazione assegna un valore alla variabile JavaScript.
L'operatore di assegnazione semplice (=) assegna il valore dell'operando di destra all'operando di sinistra.
Operatore | Descrizione | Esempio | Uguale | Prova a fare un test |
---|---|---|---|---|
= | Assegnazione | a = b | a = b | Prova a fare un test |
+= | Aggiungere prima di assegnare | a += b | a = a + b | Prova a fare un test |
-= | Sottrarre prima di assegnare | a -= b | a = a - b | Prova a fare un test |
*= | Moltiplicare prima di assegnare | a *= b | a = a * b | Prova a fare un test |
**= | Calcolare il potere prima di assegnare | a **= b | a = a ** b | Prova a fare un test |
/= | Dividere prima di assegnare | a /= b | a = a / b | Prova a fare un test |
%= | Calcolare il modulo prima di assegnare | a %= b | a = a % b | Prova a fare un test |
I operatori di confronto vengono utilizzati per confrontare due valori e restituire un valore booleano.
Operatore | Descrizione | Esempio | Definizione | Prova a fare un test |
---|---|---|---|---|
== | Uguale | a == b | Se a è uguale a b è vero | Prova a fare un test |
=== | Uguale | a === b | Se a è uguale a b e appartiene allo stesso tipo di dati, allora è true | Prova a fare un test |
!= | Inequale | a != b | Se a non è uguale a b è vero | Prova a fare un test |
!== | Inequale include il tipo | a !== b | Se a non è uguale a b e non è dello stesso tipo di dati, allora è true | Prova a fare un test |
> | Maggiore | a> b | Se a è maggiore di b, allora è true | Prova a fare un test |
< | Minore | a < b | Se a è minore di b, allora è true | Prova a fare un test |
>= | Maggiore o uguale | a>=b | Se a è maggiore o uguale a b, allora è true | Prova a fare un test |
<= | Minore o uguale | a <= b | Se a è minore o uguale a b, allora è true | Prova a fare un test |
La differenza tra (a == b) e (a === b) è:
== Se a è uguale a b, restituisce true
=== Se a è uguale a b e appartengono aStesso tipose restituisce true
Gli operatori di confronto possono essere utilizzati negli statement di condizione per confrontare valori e passare a flussi di lavoro diversi in base ai risultati.
Più avanti in questo tutorial, imparerai come utilizzare statement di condizione.
Gli operatori a bit considerano i loro operandi come un gruppo di 32 bit (zero e uno), non come numeri decimali, esadecimali o ottali.
Qualsiasi numero operandi in questa operazione viene convertito in un numero di 32 bit. Il risultato viene convertito indietro nel numero JavaScript.
Operatore | Descrizione | Esempio | Uguale | Risultato | Decimale |
---|---|---|---|---|---|
& | E | 5&1 | 0101 e 0001 | 0001 | 1 |
| | O | 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | Non | ~5 | ~0101 | 1010 | 10 |
^ | XOR | 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | Spostamento a sinistra | 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | Spostamento a destra con segno | 5 >> 1 | 0101 >> 1 | 0010 | 2 |
>>> | Spostamento a destra unsigned | 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
L'esempio sopra utilizza un esempio di 4 bit unsigned. Ma JavaScript utilizza un numero di 32 bit con segno.
Quindi, in JavaScript, ~5 non restituirà 10. Restituirà -6.
~00000000000000000000000000000101 restituirà 11111111111111111111111111111010
Gli operatori logici vengono utilizzati per determinare il logico tra variabili o valori.
Gli operatori logici sono solitamente utilizzati per combinare statement di condizione, restituendo valori booleani.
Operatore | Descrizione | Esempio | Definizione | Prova a fare un test |
---|---|---|---|---|
&& | Logico e | a && b | Se a e b sono entrambi veri, allora è vero | Prova a fare un test |
|| | Logico o | a||b | Se a o b è vero, allora è vero | Prova a fare un test |
! | Non logico | !a | Se a non è vero, allora è vero | Prova a fare un test |
Il simbolo + può anche essere utilizzato per connettere (concatenare) stringhe.
var str1 = "Hello"; var str2 = "World"; var str3 = str1 + " " + str2;Prova a vedere‹/›
l'operatore di assegnazione somma += può anche essere utilizzato per connettere (concatenare) stringhe.
var str1 = "Hey! "; str1 += "How r u doing?";Prova a vedere‹/›
quando viene utilizzato su una stringa, l'operatore + è chiamato operatore di concatenazione.
l'operatore condizionale (trigemino) è l'unico operatore JavaScript che accetta tre operandi.
può ottenere uno dei due valori in base alla condizione. La sintassi è:
condizione ? val1 : val2
secondizione il risultato della calcolazione ditrueseval1altrimenti restituiràval2.
puoi usare l'operatore condizionale in qualsiasi posizione in cui puoi usare un operatore standard.
var status = (age >= 18) ? "adulto" : "bambino";Prova a vedere‹/›
se l'età è 18 anni o più, le seguenti istruzioni assegnano il valore "adulto" alla variabile status. Altrimenti, assegna il valore "bambino" a status.
l'operazione unaria è un'operazione che ha un solo operando.
JavaScript contiene tre operatori unari:
Descrizione | Descrizione |
---|---|
delete | eliminare un oggetto, le proprietà dell'oggetto o l'elemento all'indice specificato dell'array |
typeof | restituisce il tipo della variabile |
void | specificare un'espressione che richiede un valore senza restituire un valore |
l'operatore delete può eliminare un oggetto, le proprietà dell'oggetto o l'elemento all'indice specificato dell'array.
se l'operatore delete può eseguire l'operazione, restituisce true; altrimenti, restituisce false. Se non è possibile eseguire l'operazione, restituisce false.
se l'operatore delete ha successo, imposta l'attributo o l'elemento a undefined:
var user = {firstName:"Vishal", age:"22", color:"blue"}; delete user.firstName; // restituisce trueProva a vedere‹/›
quando l'operatore delete elimina un elemento dell'array, l'elemento viene rimosso dall'array.
var fruits = ["Apple", "Mango", "Banana"]; delete fruits[0];// elimina "Apple"Prova a vedere‹/›
Attenzione:quando si elimina un elemento dell'array, la lunghezza dell'array non è influenzata.
l'operatore typeof restituisce il tipo di una variabile o espressione.
typeof ""// Restituisce "string" typeof "Vishal"// Restituisce "string" typeof "42"// Restituisce "string" (il numero entro virgolette è una String) typeof 42 // Restituisce "number" typeof true // Restituisce "boolean" typeof false // Restituisce "boolean" typeof undefined // Restituisce "undefined" typeof null // Restituisce "object" typeof {name:"Vishal", age:22} // Restituisce "object" typeof [2, 4, 6, 8] // Restituisce "object" (non "array", vedere nota di seguito) typeof function myFunc(){} // Restituisce "function"Prova a vedere‹/›
Attenzione:L'operatore typeof restituisce "object" per gli array, perché negli array JavaScript sono oggetti.
Ecco l'elenco dei valori restituiti dall'operatore typeof:
Tipo | La stringa restituita da typeof |
---|---|
Number | "number" |
String | "string" |
Boolean | "boolean" |
Object | "object" |
Function | "function" |
Undefined | "undefined" |
Null | "object" |
L'operatore void specifica un'espressione che richiede un valore ma non restituisce alcun valore.
Il codice seguente crea un link ipertestuale che non esegue alcuna operazione quando l'utente clicca su di esso.
<a href="javascript:void(0)">Clicca qui per non fare nulla</a>Prova a vedere‹/›
Gli operatori relazionali confrontano i loro operandi e restituiscono un valore booleano in base a se il confronto è vero o no.
In JavaScript ci sono due operatori relazionali:
Descrizione | Descrizione |
---|---|
in | Se l'attributo specificato è presente nell'oggetto specificato, restituisce true |
instanceof | Se l'oggetto è un esempio di tipo oggetto, restituisce true |
Se l'attributo specificato è presente nell'oggetto specificato, l'operatore in restituisce true.
var user = {firstName:"Vishal", age:"22", color:"blue"}; "firstName" in user; // returns true "age" in user; // restituisce true "Food" in user; // restituisce falseProva a vedere‹/›
Quando si utilizza l'operatore in con un array Array, è necessario specificare l'indice, non il valore dell'indice.
var fruits = ["Apple", "Mango", "Banana"]; var item1 = 0 in fruits; // restituisce true var item2 = 1 in fruits; // restituisce true var item3 = 2 in fruits; // restituisce true var item4 = 3 in fruits; // restituisce falseProva a vedere‹/›
Se l'oggetto specificato appartiene al tipo di oggetto specificato, l'operatore instanceof restituirà true.
Quando è necessario determinare il tipo di oggetto in esecuzione, utilizzare l'operatore instanceof.
var myObj = new Date(); if (myObj instanceof Date) { // espressioni da eseguire {}Prova a vedere‹/›