Referencias JS


Estructuras de control

Las estructuras de control de flujo son esenciales en los lenguajes de programación. Son instrucciones del tipo "si se cumple esta condición, debes hacer esto; si no se cumple, haz esto otro". También existen instrucciones del tipo "repite esto mientras se cumpla esta condición" o "repite esto n-veces".

Si se utilizan estructuras de control de flujo, los programas dejan de ser una sucesión lineal de instrucciones para convertirse en programas inteligentes que pueden tomar decisiones en función del valor de las variables.

 

Condicionales

Estructura if

La estructura más utilizada en JavaScript y en la mayoría de lenguajes de programación es la estructura if. Se emplea para tomar decisiones en función de una condición.

Sintaxis:

if(condicion) {

  // Bloque de código cuando se cumple <condicion>...

}

Estructura if...else

En ocasiones, las decisiones que se deben realizar no son del tipo "si se cumple la condición, hazlo; si no se cumple, no hagas nada". Normalmente las condiciones suelen ser del tipo "si se cumple esta condición, hazlo; si no se cumple, haz esto otro". 

Sintaxis:

if(condicion) {

  // Bloque de código cuando se cumple <condición>

}
else {

  // Bloque cuando NO se cumple <condición>

}

Estructura switch

La estructura if...else se puede utilizar para realizar comprobaciones múltiples y tomar decisiones complejas. Sin embargo, si todas las condiciones dependen siempre de la misma variable, el código JavaScript resultante es demasiado redundante y pesado de escribir, para estos casos está la estructura switch que es más eficiente y sencilla de entender.

Sintaxis:

switch(variable) {
  case valor_1:

  // Bloque cuando <varible> toma el valor_1

    break;
  case valor_2:

  // Bloque cuando <varible> toma el valor_2

    break;
      ... ... ...

  case valor_n:

  // Bloque cuando <varible> toma el valor_n

    break;
  default:

  // Bloque cuando <varible> NO cumple nigún caso

    break;
}

Operador ternario

El operador condicional (ternario) es el único operador en JavaScript que tiene tres operandos. Este operador se usa con frecuencia como atajo para la instrucción if.

Sintaxis:

condicion ? expresion1 : expresion2

Si la condición es true, el operador retorna el valor de la expresion1; de lo contrario,  devuelve el valor de expresion2.

  • Es posible realizar evaluaciones ternarias múltiples.
  • Se pueden usar operaciones ternarias en espacio vacío con el propósito de realizar diferentes operaciones.
  • Se pueden realizar más de una operación por caso, separándolas con una coma.
  • Se puede realizar más de una operación durante la asignación de un valor.

 

Bucles

Estructura for

La estructura for permite realizar repeticiones (también llamadas bucles) de una forma muy sencilla. "mientras la condición indicada se siga cumpliendo, repite la ejecución de las instrucciones definidas dentro del for. Además, después de cada repetición, actualiza el valor de las variables que se utilizan en la condición".

    La "inicialización" es la zona en la que se establece los valores iniciales de las variables que controlan la repetición.
    La "condición" es el único elemento que decide si continua o se detiene la repetición.
    La "actualización" es el nuevo valor que se asigna después de cada repetición a las variables que controlan la repetición.

Sintaxis:

for(inicializacion; condicion; actualizacion){
 
// Bloque de código que se repite n-veces...

}

Estructura for...in

Su funcionamiento es semejante al bucle for pero su sintaxis es más fácil. Si se quieren recorrer todos los elementos que forman un array, la estructura for...in es la forma más eficiente de hacerlo.

Sintaxis:

for(indice in array) {

  // Bloque de código que se repite tantas veces como elementos hay

}

Estructura while

La estructura while permite crear bucles que se ejecutan ninguna o más veces, dependiendo de la condición indicada. El funcionamiento del bucle while se resume en: "mientras se cumpla la condición indicada, repite indefinidamente las instrucciones incluidas dentro del bucle". Si la condición no se cumple ni siquiera la primera vez, el bucle no se ejecuta.

Sintaxis:

while(condicion) {

/* Bloque de código que se ejecuta mientras se cumple la <condición> ...
Las variables que controlan la condición deben modificarse dentro del propio bucle sino el bucle se ejecuta indefinidamente y bloqueamos el programa. */

} 

Estructura do...while

El bucle de tipo do...while es muy similar al bucle while, salvo que en este caso siempre se ejecutan las instrucciones del bucle al menos la primera vez. Es importante no olvidar que después del while() se debe añadir el carácter ; (al contrario de lo que sucede con el bucle while simple).

Sintaxis:

do {

/* Bloque de código que se ejecuta una vez y luego mientras se cumple la <condición> ...
Las variables que controlan la condición deben modificarse dentro del propio bucle sino el bucle se ejecuta indefinidamente y bloqueamos el programa. */

} while(condicion);

 

Control de errores

Estructura try...catch

La estructura try consiste en un bloque de código que se ejecuta de manera normal, y captura cualquier excepción que se pueda producir en ese bloque de sentencias.

Sintaxis:


<div id="titulo">Estructura try... throw ...catch</div>
<div id="info">Estructuras de control de errores</div>
<p>Por favor, escribe un número entre -25 y 25:</p>

<input id="dato" type="text">
<button type="button" onclick="AlCubo()">Elevar al cuadrado</button>
<p id="resultado"></p>

<script>
    function AlCubo() {
        var mensaje, x, resp;
        mensaje = document.getElementById("resultado");
        mensaje.innerHTML = "";
        x = document.getElementById("dato").value;
        try {
            if(x == "") throw "el dato está vacío.";
            if(isNaN(x)) throw "el dato no es un número.";
            if(x > 25) throw "el dato es demasiado alto.";
            if(x < -25) throw "el dato es demasiado bajo.";
        }
        catch(err) {
            mensaje.style.backgroundColor = 'red';
            mensaje.innerHTML = "¡Error! " + err;
        }
        if (mensaje.innerHTML == ''){
            resp = x*x*x;
            mensaje.innerHTML += resp;
        }
    }
</script>

En el ejemplo, comprobamos una serie de errores que se pueden producir al introducir un dato, y por tanto cada uno provoca una excepción en JavaScript. Estos error son capturados por la cláusula catch, que contiene las sentencias que indican que acciones deben realizarse, en el ejemplo, mostrar un mensaje de error. Si no se produce ninguna excepción en el bloque try, no se ejecuta el bloque dentro de catch.

Imprimir Correo electrónico

Visitas...

Hoy ........ 4

Ayer ....... 5

Mes ........ 44

Total ........ 5892

En línea...

Hay 12 invitados y ningún miembro en línea

< 3con14 - LAB / >

1998 - 2017, www.3con14.biz
(cc) Jesús Plaza M.
RECONOCIMIENTOS