Especificar varias condiciones dentro de la declaración if en JavaScript

  1. Uso de operadores lógicos para agregar condiciones de multiplicación dentro de la declaración if en JavaScript
  2. Uso de operadores AND y OR en combinación dentro de la declaración if en JavaScript

En programación, si queremos ejecutar un código cuando se cumple una condición o condiciones particulares, entonces, en tales casos, hacemos uso de algo llamado declaraciones if. Digamos que tenemos un array de números enteros y queremos comprobar si el número que dice 20 está presente dentro del array o no. Hacemos esto agregando una condición dentro de la declaración if de la siguiente manera.

var arr = [5,25,70,62,20,89];

arr.forEach(num => {
  	if (num == 20){
    	//do something
	}  
})

Este es un ejemplo en el que solo hemos agregado una condición dentro de la declaración if. Pero hay situaciones al escribir software listo para producción en las que tenemos que pasar múltiples condiciones a las declaraciones if. Y según el resultado de la condición (verdadero o falso), podemos ejecutar el código apropiado. Ahora entendamos cómo escribir una declaración if que contiene múltiples condiciones.

Uso de operadores lógicos para agregar condiciones de multiplicación dentro de la declaración if en JavaScript

Para agregar varias condiciones dentro de la declaración if, hacemos uso de operadores lógicos. Hay cuatro operadores lógicos en JavaScript, de los cuales usaremos dos operadores lógicos AND (&&) y OR (||). Estos dos operadores nos ayudarán a separar las diferentes condiciones dentro de la declaración if. Veamos cómo funcionan estos operadores y cómo utilizarlos.

  • Y (&&)

El operador AND (&&) funciona de esta manera si tiene muchas condiciones, y si alguna de las condiciones es false, el resultado general será false. Para obtener más información, consulte la tabla de verdad a continuación.

Tabla de verdad para el operador AND:

A B A && B
True True True
True False False
False True False
False False False

Ejemplo:

var arr = [5,25,70,62,20,89];

arr.forEach(num => {
    if (num == 20 && num%2 == 0){
    console.log(num);
}  
})

Producción:

20

En este ejemplo, tenemos dos condiciones dentro de la declaración if. La primera condición comprueba si el número actual del array es 20 o no. Si la condición se cumple, devolverá true y false en caso contrario. La segunda condición comprueba si el número actual del array es par o no. Y si eso es correcto, entonces será true y false en caso contrario.

En este caso, dado que estamos usando el operador &&, ambas condiciones dentro de las sentencias if deben mantenerse para entrar dentro de la sentencia if. Aquí, sólo para el número 20 del array, ambas condiciones serán verdaderas porque el número 20 es igual a 20, y también 20%2 nos dará 0 como salida.

  • O (||)

El operador OR (||) funciona de esta manera si tiene muchas condiciones, y si alguna de las condiciones es true, el resultado general será true.

La tabla de verdad para el operador OR:

| A | B | A || B | | ——- | ——- | :—–: | | True | True | True | | True | False | True | | False | True | True | | False | False| False |

Ejemplo:

var arr = [5,25,70,62,20,89];

arr.forEach(num => {
  	if (num == 20 || num%2 == 0){
    	console.log(num);
	}  
})

Producción:

70
62
20

Para el operador OR, hemos tomado el mismo ejemplo que hemos visto para el operador AND, pero en lugar de &&, hemos utilizado || operador. Observe cómo ha cambiado la salida con solo cambiar el operador. Esto se debe a que el segundo operador se convierte en true tres veces cuando el número es 70, 62 y 20.

Uso de operadores AND y OR en combinación dentro de la declaración if en JavaScript

Hay algunas situaciones en las que tenemos que usar estos operadores en combinación dentro de la declaración if. El siguiente ejemplo ilustra lo mismo.

var arr = [5,25,70,62,20,89];

arr.forEach(num => {
  	if ( (num != 20 && num%2 == 0) || (num > 50) && (num < 100)){
    	console.log(num);
	}  
})

Producción:

70
62
89

Aquí, tenemos tres condiciones dentro de la declaración if. La primera condición es una combinación de dos condiciones en sí misma. Para que la primera condición sea true, las dos condiciones internas num != 20 y num%2 == 0 también deben ser verdaderas ya que hay un operador &&. Luego tenemos la segunda condición para comprobar si el número es mayor que 50 o no. Y la tercera condición es comprobar si el número es menor que 100 o no.

Observe que hay un || operador entre la primera y la segunda condición y un operador && entre la segunda y la tercera. Según la precedencia de los operadores, el operador && tiene mayor precedencia que el || operador. Por lo tanto, primero se evaluarán la segunda y la tercera condiciones, y luego el resultado de esto se evaluará con la primera condición. Para obtener más información sobre la precedencia de los operadores, puede visitar estos documentos de MDN.

Además de usar una sola declaración if, también podemos hacer uso de algo llamado declaración if y else if. Esto nos permite agregar múltiples declaraciones if, cada una con diferentes condiciones, y cada uno de estos bloques de código puede ejecutar código diferente. El siguiente fragmento de código muestra esto.

var arr = [5,25,70,62,20,89];

arr.forEach(num => {
  	if ((num > 50) && (num < 100)){
    	console.log("The number is in the range of 20 to 100.");
	} 
    else if(num != 20 && num%2 == 0){
        console.log("The number 20 is divisible by 2.")
    }
    else if((num < 50) || (num == 5)){
        console.log("The number is less than 50.")
    }
})

Producción:

The number is less than 50.
The number is less than 50.
The number is in the range of 20 to 100.
The number is in the range of 20 to 100.
The number is less than 50.
The number is in the range of 20 to 100.

Aquí, hemos agregado if y varias declaraciones else if, cada una de las cuales contiene múltiples condiciones. Ahora, dependiendo del número presente dentro del array, se cumplirá cualquiera de las tres condiciones y se ejecutará el código dentro de ese bloque de código en particular.