Setencias de Decisión en JavaScript (if-then, if-then-else)

Author
By Darío Rivera
Posted on 2020-09-06 in Javascript

Las sentencias de control de flujo nos permiten ejecutar bloques específicos de código basados en una decisión. Recordemos que el flujo general de un programa es de arriba hacia abajo, es decir, se ejecuta desde la primera línea hasta la última (en la mayoría de los casos). En este post, veremos cómo codificar las sentencias de decisión if-then y if-then-else en JavaScript.

Sentencia if-then

Esta sentencia permite ejecutar un bloque de código en el caso de que la condición de evaluación de como resultado true. Veamos el siguente ejemplo.

let number = 10;
        
if (number > 7) {
    console.log("The number is greater than 7");
}

Al ejecutar este código se obtiene como resultado

The number is greater than 7

Lo cual indica que la expresión evaluada dió como resultado true dado que 10 > 7.

Sentencia if-then-else

Esta sentencia permite ejecutar un bloque de código alternativo en el caso de que la condición de evaluación de como resultado false. Alteremos un poco el ejemplo anterior y veamos lo siguiente.

let number = 5;

if (number > 7) {
    console.info("The number is greater than 7");
} else {
    console.info("The number is lower than 7");
}

Al ejecutar este código se obtiene como resultado

The number is lower than 7

Esto implica que la evaluación realizada dio como resultado false dado que no se cumple que 5 > 7. Puede darse el caso también que tengas más de dos condiciones simples en tu código. Veamos el siguiente ejemplo que muestra tres condiciones diferentes.

let number = 7;

if (number > 10) {
    console.info("The number is greater than 10");
} else if (number > 5) {
    console.info("The number is greater than 5");
} else {
    console.info("The number is lower than 5");
}

Al ejecutar este código se obtiene en efecto

The number is greater than 5

Esto es así ya que la primera condición fue evaluada como false ya que no se cumple que 7 > 10. Dado esto se evalúa la segunda condición la cuál da como resultado true ya que 7 > 5. El último bloque se omite ya que la ejecución entró por una de las condiciones anteriores.

Condiciones complejas

Hasta ahora todo parece excesivamente simple. Veamos también que las sentencias de desición puede evaluar una desición compuesta por una expresión compleja. Veamos el siguente ejemplo:

let number = 7;

if (number >= 5 && number <= 10) {
    console.log("The number is between 5 and 10");
} else {
    console.log("The number is not between 5 and 10");
}

Al ejecutar este código obtenemos el siguiente resultado

The number is between 5 and 10

El operador && indica que las dos condiciones se tiene que cumplir. Adicinal a esto, existen algunas formas alternativas de evaluar una condición, es el caso del operador ternario. Recuerdas el primer ejemplo de la sentencia if-then-else ?. Pues también se puede escribir de la siguente manera.

let number = 5;

comparision = (number > 7) ? "greater" : "lower";
console.log("The number is " + comparision + " than 7");

Al ejecutar este código se obtiene en efecto:

The number is lower than 7

Este comportamiento es exactamente igual al del ejemplo anterior. La diferencia radica en que el condicional es ejecutado para asignar el resultado a la variable comparision. En este caso el bloque que se ejecuta es "lower" y no "greater". Cuando la condición es evaluada como true se ejecuta el bloque después del signo de interrogación ( ? ), cuando es evaluada como false se ejecuta el bloque que está después del caracter dos puntos ( : ).


Si te ha gustado este artículo puedes invitarme a tomar una taza de café

Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.