Estructuras de control de flujo.
Las estructuras de control de flujo, permite que los programas puedan “tomar decisiones”, por así decirlo, en base a los valores de las variables o a la información que proporcione el usuario.
Estas instrucciones validan información y en base a ello realizan ciertas operaciones u otras.
Estructura IF
Esta es unas de las estructuras mas utilizadas en todos los lenguajes de programación, incluyendo JavaScript. Se emplea para tomar decisiones en base a una condición; su forma mas básica es:
if(condicion){ ....instrucciones...... }
Si la condición se cumple, es decir, es verdadera, se ejecutan las instrucciones, las cuales deben de estar entre las llaves({ }), en caso de que la condición ‘no se cumpla, es decir, sea falsa, se omite la ejecución de dichas instrucciones. Ejemplo:
var mostrarMsj = true; if(mostrarMsj){ alert("Curso rápido de JavaScript") }
En este ejemplo, el mensaje se muestra, debido a que la condición si se cumple, pues es verdadera. Otra manera de hacerlo seria:
var mostrarMsj = true; if(mostrarMsj==true){ alert("Curso rápido de JavaScript") }
El resultado es el mismo, pues ambos valores coinciden. Este ejemplo, permite explicar la diferencia entre el signo igual (=) y los dos signos igual (==). Cuando lo que se desea es comparar valores se debe utilizar dos signos igual(==), y si lo que se desea es asignar un valor solo se usa un solo igual (=).
La condición dentro del if(), permite usar diversos operadores lógicos y de relacionales. Ejemplo:
var mostrarMsj = false; if(!mostrarMsj){ alert("Curso rápido de JavaScript") }
En este ejemplo, la condición se leería así: ‘si no es verdadero’, por lo cual se ejecutaría la instrucción mostrando el mensaje de alerta.
También es posible utilizar los operadores AND y OR. Ejemplo:
var mostrarMsj = true; var noMostrarMsj = false if(mostrarMsj && !noMostrarMsj){ alert("Curso rápido de JavaScript") }
La condición anterior está formada por una operación AND
sobre dos variables. A su vez, a la segunda variable se le aplica el operador de negación. De esta forma, como el valor de mostrado
es false
, el valor !mostrado
sería true
. Como la variable usuarioPermiteMensajes
vale true
, el resultado de !mostrado && usuarioPermiteMensajes
sería igual a true && true
, por lo que el resultado final de la condición del if()
sería true
y por tanto, se ejecutan las instrucciones que se encuentran dentro del bloque del if()
.
Estructura if…else
Normalmente las condiciones suelen ser del tipo “si se cumple esta condición, hazlo; si no se cumple, haz esto otro”.
Existe una variante de la estructura if
llamada if...else
. Su definición formal es la siguiente:
if(condicion) { instrucciones.... } else {
instrucciones....
}
Si la condición ‘se cumple'(valor verdadero), se ejecuta el primer bloque de instrucciones; si la condición ‘no se cumple’ (valor falso) entonces (‘else’) se realizan las instrucciones contenidas en el bloque ‘else’.
Ejemplo:
var edad = 18; if(edad >= 18) { alert("Ya puedes votar"); } else { alert("No puedes votar"); }
La estructura if...else
se puede encadenar para realizar varias comprobaciones seguidas:
if(edad < 12) { alert("Eres un niño"); } else if(edad < 19) { alert("Eres un adolescente"); } else if(edad < 35) { alert("Aun sigues siendo joven"); } else { alert("Piensa en cuidarte un poco más"); }