TypeScript - exemplos de operadores lógicos
Operadores lógicos são usados para combinar duas ou mais condições. Os operadores lógicos também retornam um valor booleano. Suponha que o valor da variável A seja 10 e B seja 20.
Operador | Descrição | Exemplo |
---|---|---|
&& (e) | O operador retorna verdadeiro apenas se todas as expressões especificadas retornarem verdadeiro | (A> 10 && B> 10) é False |
|| (OU) | O operador retorna verdadeiro se pelo menos uma das expressões especificadas retornar verdadeiro | (A> 10 || B> 10) é verdadeiro |
! (NÃO) | O operador retorna o inverso do resultado da expressão. Por exemplo:! (> 5) retorna falso | ! (A> 10) é verdadeiro |
Exemplo
var avg:number = 20;
var percentage:number = 90;
console.log("Value of avg: "+avg+" ,value of percentage: "+percentage);
var res:boolean = ((avg>50)&&(percentage>80));
console.log("(avg>50)&&(percentage>80): ",res);
var res:boolean = ((avg>50)||(percentage>80));
console.log("(avg>50)||(percentage>80): ",res);
var res:boolean=!((avg>50)&&(percentage>80));
console.log("!((avg>50)&&(percentage>80)): ",res);
Na compilação, ele irá gerar o seguinte código JavaScript.
var avg = 20;
var percentage = 90;
console.log("Value of avg: " + avg + " ,value of percentage: " + percentage);
var res = ((avg > 50) && (percentage > 80));
console.log("(avg > 50) && (percentage > 80): ", res);
var res = ((avg > 50) || (percentage > 80));
console.log("(avg > 50)||(percentage > 80): ", res);
var res = !((avg > 50) && (percentage > 80));
console.log("!((avg > 50)&&(percentage > 80)): ", res);
O snippet de código acima produzirá a seguinte saída -
Value of avg: 20 ,value of percentage: 90
(avg > 50)&&(percentage > 80): false
(avg > 50)||(percentage > 80): true
!((avg > 50)&&(percentage > 80)): true
Operadores de curto-circuito (&& e ||)
O && e || operadores são usados para combinar expressões. O operador && retorna verdadeiro apenas quando ambas as condições retornam verdadeiras. Vamos considerar uma expressão -
var a = 10
var result = ( a<10 && a>5)
No exemplo acima, a <10 e a> 5 são duas expressões combinadas por um operador &&. Aqui, a primeira expressão retorna falso. No entanto, o operador && requer que ambas as expressões retornem verdadeiras. Portanto, o operador pula a segunda expressão.
O || operador retorna verdadeiro, se uma das expressões retorna verdadeiro. Por exemplo -
var a = 10
var result = ( a>5 || a<10)
No snippet acima, duas expressões a> 5 e a <10 são combinadas por a || operador. Aqui, a primeira expressão retorna verdadeira. Uma vez que, a primeira expressão retorna true, o || operador ignora a expressão subsequente e retorna verdadeiro.
Devido a este comportamento do && e || operador, eles são chamados deshort-circuit operators.