TypeScript - Operatori

Cos'è un operatore?

Un operatore definisce alcune funzioni che verranno eseguite sui dati. I dati su cui lavorano gli operatori sono chiamati operandi. Considera la seguente espressione:

7 + 5 = 12

Qui, i valori 7, 5 e 12 sono operands, mentre + e = sono operators.

I principali operatori in TypeScript possono essere classificati come:

  • Operatori aritmetici
  • Operatori logici
  • Operatori relazionali
  • Operatori bit per bit
  • Operatori di assegnazione
  • Operatore ternario / condizionale
  • Operatore di stringa
  • Tipo Operatore

Operatori aritmetici

Supponiamo che i valori nelle variabili aeb siano rispettivamente 10 e 5.

Mostra esempi

Operatore Descrizione Esempio
+ (Aggiunta) restituisce la somma degli operandi a + b è 15
- (Sottrazione) restituisce la differenza dei valori a - b è 5
* (Moltiplicazione) restituisce il prodotto dei valori a * b è 50
/ (Divisione) esegue l'operazione di divisione e restituisce il quoziente a / b è 2
% (Modulo) esegue l'operazione di divisione e restituisce il resto a% b è 0
++ (incremento) Incrementa il valore della variabile di uno a ++ è 11
- (Decremento) Decrementa il valore della variabile di uno a-- è 9

Operatori relazionali

Gli operatori relazionali testano o definiscono il tipo di relazione tra due entità. Gli operatori relazionali restituiscono un valore booleano, ovvero vero / falso.

Supponiamo che il valore di A sia 10 e B sia 20.

Mostra esempi

Operatore Descrizione Esempio
> Più grande di (A> B) è False
< Minore di (A <B) è vero
> = Maggiore o uguale a (A> = B) è False
<= Minore o uguale a (A <= B) è vero
== Uguaglianza (A == B) è falso
! = Non uguale (A! = B) è vero

Operatori logici

Gli operatori logici vengono utilizzati per combinare due o più condizioni. Anche gli operatori logici restituiscono un valore booleano. Supponiamo che il valore della variabile A sia 10 e B sia 20.

Mostra esempi

Operatore Descrizione Esempio
&& (E) L'operatore restituisce true solo se tutte le espressioni specificate restituiscono true (A> 10 && B> 10) è False
|| (O) L'operatore restituisce true se almeno una delle espressioni specificate restituisce true (A> 10 || B> 10) è vero
! (NON) L'operatore restituisce l'inverso del risultato dell'espressione. Ad esempio:! (> 5) restituisce false ! (A> 10) è vero

Operatori bit per bit

Assumi la variabile A = 2 e B = 3

Mostra esempi

Operatore Descrizione Esempio
& (AND bit per bit) Esegue un'operazione booleana AND su ogni bit dei suoi argomenti interi. (A e B) è 2
| (BitWise OR) Esegue un'operazione booleana OR su ogni bit dei suoi argomenti interi. (A | B) è 3
^ (XOR bit per bit) Esegue un'operazione booleana OR esclusivo su ogni bit dei suoi argomenti interi. OR esclusivo significa che uno degli operandi uno è vero o l'operando due è vero, ma non entrambi. (A ^ B) è 1
~ (Bitwise Not) È un operatore unario e opera invertendo tutti i bit nell'operando. (~ B) è -4
<< (Maiusc sinistro) Sposta tutti i bit nel suo primo operando a sinistra del numero di posizioni specificato nel secondo operando. I nuovi bit vengono riempiti con zeri. Spostare un valore a sinistra di una posizione equivale a moltiplicarlo per 2, spostare due posizioni equivale a moltiplicarlo per 4 e così via. (A << 1) è 4
>> (Maiusc destro) Operatore binario di spostamento a destra. Il valore dell'operando sinistro viene spostato a destra del numero di bit specificato dall'operando destro. (A >> 1) è 1
>>> (Spostamento a destra con zero) Questo operatore è proprio come l'operatore >>, tranne per il fatto che i bit spostati a sinistra sono sempre zero. (A >>> 1) è 1

Operatori di assegnazione

Mostra esempi

Operatore Descrizione Esempio
= (Assegnazione semplice) Assegna i valori dall'operando del lato destro all'operando del lato sinistro C = A + B assegnerà il valore di A + B a C
+ = (Aggiungi e assegnazione) Aggiunge l'operando destro all'operando sinistro e assegna il risultato all'operando sinistro. C + = A è equivalente a C = C + A
- = (Sottrai e assegnazione) Sottrae l'operando destro dall'operando sinistro e assegna il risultato all'operando sinistro. C - = A è equivalente a C = C - A
* = (Moltiplicazione e assegnazione) Moltiplica l'operando destro con l'operando sinistro e assegna il risultato all'operando sinistro. C * = A è equivalente a C = C * A
/ = (Dividi e assegnazione) Divide l'operando sinistro con l'operando destro e assegna il risultato all'operando sinistro.

Note - La stessa logica si applica agli operatori Bitwise, quindi diventeranno << =, >> =, >> =, & =, | = e ^ =.

Operatori vari

L'operatore di negazione (-)

Cambia il segno di un valore. Facciamo un esempio.

var x:number = 4 
var y = -x; 
console.log("value of x: ",x);   //outputs 4 
console.log("value of y: ",y);   //outputs -4

Durante la compilazione, genererà il seguente codice JavaScript.

//Generated by typescript 1.8.10
var x = 4;
var y = -x;
console.log("value of x: ", x);   //outputs 4
console.log("value of y: ", y);   //outputs -4

Produrrà il seguente output:

value of x:  4 
value of y:  -4

Operatori di stringa: operatore di concatenazione (+)

L'operatore + quando viene applicato alle stringhe aggiunge la seconda stringa alla prima. Il seguente esempio ci aiuta a comprendere questo concetto.

var msg:string = "hello"+"world" 
console.log(msg)

Durante la compilazione, genererà il seguente codice JavaScript.

//Generated by typescript 1.8.10
var msg = "hello" + "world";
console.log(msg);

Produrrà il seguente output:

helloworld

L'operazione di concatenazione non aggiunge uno spazio tra le stringhe. Più stringhe possono essere concatenate in una singola istruzione.

Operatore condizionale (?)

Questo operatore viene utilizzato per rappresentare un'espressione condizionale. L'operatore condizionale è talvolta indicato anche come operatore ternario. La sintassi è la seguente:

Test ? expr1 : expr2
  • Test - si riferisce all'espressione condizionale

  • expr1 - valore restituito se la condizione è vera

  • expr2 - valore restituito se la condizione è falsa

Diamo un'occhiata al seguente codice:

var num:number = -2 
var result = num > 0 ?"positive":"non-positive" 
console.log(result)

La riga 2 controlla se il valore nella variabile numè maggiore di zero. Senum è posto ad un valore maggiore di zero, restituisce la stringa “positivo” altrimenti viene restituita la stringa “non positivo”.

Durante la compilazione, genererà il seguente codice JavaScript.

//Generated by typescript 1.8.10
var num = -2;
var result = num > 0 ? "positive" : "non-positive";
console.log(result);

Lo snippet di codice sopra produrrà il seguente output:

non-positive

Operatori di tipo

tipo di operatore

È un operatore unario. Questo operatore restituisce il tipo di dati dell'operando. Dai un'occhiata al seguente esempio:

var num = 12 
console.log(typeof num);   //output: number

Durante la compilazione, genererà il seguente codice JavaScript.

//Generated by typescript 1.8.10
var num = 12;
console.log(typeof num);   //output: number

Produrrà il seguente output:

number

istanza di

Questo operatore può essere utilizzato per verificare se un oggetto è di un tipo specificato o meno. L'uso diinstanceof operatore è discusso nel capitolo classes.