¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. JavaScript y Angular
  3. Bucles y condiciones
Extrait - JavaScript y Angular De los fundamentos del lenguaje al desarrollo de una aplicación web
Extractos del libro
JavaScript y Angular De los fundamentos del lenguaje al desarrollo de una aplicación web Volver a la página de compra del libro

Bucles y condiciones

Condiciones

1. Operadores lógicos

El álgebra booleana, también llamada cálculo booleano, se usa para evaluar expresiones matemáticas de dos valores. Clásicamente, los operadores lógicos se utilizan entre dos booleanos para devolver un resultado booleano de la operación. En casos raros, permiten la devolución de valores no booleanos.

a. Y

La Y lógica (&&) devuelve verdadero si, y solo si, ambas expresiones evaluadas devuelven verdadero.

document.writeln(true && true);   // verdadero  
document.writeln(true && false);  // falso  
document.writeln(false && true);  // falso  
document.writeln(false && false); // falso 

b. O

Un O lógico (||) solo necesita que un elemento sea verdadero para devolver verdadero.

document.writeln(true || true);   // verdadero  
document.writeln(true || false);  // verdadero 
document.writeln(false || true);  // verdadero 
document.writeln(false || false); // falso 

c. NO

Aunque la negación solo se realiza en una sola expresión, puede considerarse como un operador lógico.

null, el número 0 y la cadena de caracteres vacía se evalúan como falso. Su negación, por tanto, devuelve verdadero.

document.writeln(!true)  
document.writeln(!false)  
document.writeln(!null)  
document.writeln(!0) 

d. Evaluación

Dado que el Y lógico solo devuelve verdadero cuando ambas expresiones son verdaderas, JavaScript no evalúa la segunda expresión si la primera es falsa.

Asimismo, no evalúa la segunda expresión de un OR lógico si la primera es verdadera. 

<!DOCTYPE html>  
<html lang="es">  
  
<head>  
   <meta charset="UTF-8">  
   <title>Ediciones ENI</title>  
</head>  
  
<body>  
   <script>  
       // Operadores lógicos  
       document.writeln("<h3> Operadores lógicos : </h3>");  
       // Y  
       document.writeln("<span>Y lógico: </span>");  ...

Bucles

Un bucle se utiliza en programación para repetir un fragmento de código un cierto número de veces o hasta que se cumplen una o más condiciones.

Por ejemplo, para mostrar una lista de la compra, el programa repetirá la misma operación en cada artículo de la lista, procesándolos uno a uno, en sucesión.

Hay dos formas de realizar un bucle en JavaScript:

  • while: realiza operaciones siempre que no se cumpla una condición.

  • for: permite repetir un tratamiento un número definido de veces.

1. while

El bucle while permite repetir un tratamiento siempre que no se satisfaga una condición.

a. Sintaxis

Su sintaxis es particularmente simple, dado que es casi literal:

// Siempre y cuando no se cumpla la condición:  
while (condición) {  
      // El programa realiza una o más operaciones 
      operaciones;  
} 

La condición puede ser de cualquier forma, pero debe devolver necesariamente un booleano. El bucle comienza de nuevo durante un turno siempre que la condición se evalúe como verdadera.

b. Al infinito y más allá

El bucle infinito es enemigo del desarrollador. Y a veces puede tomar formas tortuosas.

let i = 0;  
// /!\ Este bucle es un bucle infinito 
while (i<2) {  
        i = i++;  
} 

Como recordatorio, i++ es el valor de i antes del incremento, mientras que ++i es el siguiente. Por lo tanto, el valor de i permanece en 0 y las múltiples iteraciones no cambiarán nada.

c. Ejemplo

Supongamos que la NASA desarrolla un temporizador de cuenta atrás en JavaScript para el lanzamiento de un nuevo cohete al espacio.

<!-- C:\JavaScriptYAngular\JavaScript\C04\demonstration\ 
index.html -->  
<!DOCTYPE html>  
<html lang="es">  
  
<head>  
   <meta charset="UTF-8">  
   <title> Ediciones ENI</title>  
</head>  
  
<body>  
   <script>       
       //...

Práctica

1. Enunciado

Realice la visualización de números del 0 al 200.

Muestre la secuencia de Fibonacci hasta el número 666. En ella, cada número es la suma de los dos anteriores (1, 1, 2, 3, 5, 8…).

Realice la visualización de los números primos entre 2 y 66. Como recordatorio, un número primo es un número divisible solo por sí mismo y por 1.

Images/Image4-4.png

Resultado de la práctica

2. Corrección

Para los números del 0 al 200, el código se basa en un bucle cuyos límites se conocen. Comienza en 0 y termina en 200 inclusive.

document.writeln("<h4>Los números de 0 a 200</h4>");  
for (let i = 0; i <= 200; i++) {  
   document.writeln(i);  
} 

Para la secuencia de Fibonacci, cada elemento es el resultado de la suma de los dos elementos anteriores. Los dos primeros elementos serán 1 y 2, por lo que el tercero será 3 (1 + 2).

Una vez más, es un bucle que se detiene tan pronto como el elemento que se ha de mostrar es mayor que 666. Para cada elemento, muestra la suma de los dos elementos anteriores y luego desplaza cada elemento en una posición. El elemento inmediatamente anterior se convierte en el anterior al anterior y la suma se convierte en el elemento precedente.

Por ejemplo, si los dos elementos anteriores son 13 y 21, el bucle muestra 34 (13 + 21); luego establece...