Curso de JavaScript desde cero

¿Cómo funciona el bucle do while?

Capítulo 25: El bucle do while de JavaScript

Terminamos de ver los bucles con el bucle do while. Vamos a ver algún que otro ejemplo breve y pasamos a otros temas en el curso.

Palabra del lenguaje nº 42 encontrada.
do permite cambiar la forma en que funciona un bucle while.

Funcionamiento práctico del bucle do while

El bucle do while es solo una variación del bucle while. Solo cambia un poco la sintaxis y alguna cosilla que ahora te explicaré.

Empecemos con un ejemplo en pseudocódigo:

 // Pseudocódigo.
inicializador
do {
	código a ejecutar

	expresión final
} while (condición);

Primero tenemos el inicializador fuera del bucle, al igual que el while normal. el código a ejecutar, lo tenemos dentro de las llaves del do además de la expresión final. Finalmente, el while con la condición de salida.

Y ahora, un ejemplo en código de real:

let i = 0;

do {
	console.log("El valor de i es: " + i);
	i+=5;
} while (i <= 50);
El valor de i es: 0
El valor de i es: 5
El valor de i es: 10
El valor de i es: 15
El valor de i es: 20
El valor de i es: 25
El valor de i es: 30
El valor de i es: 35
El valor de i es: 40
El valor de i es: 45
El valor de i es: 50

El inicializador está igual que en el bucle while, en una variable. Utilizamos la palabra do para crear el bucle. Abrimos llaves sin condición de salida, solo escribe el código que quieras y el incremento/decremento. Cierra las llaves y ahora escribe while para incluir entre los paréntesis la condición de salida. Eso es todo.

Diferencia entre el bucle while y el bucle do while

Aparte, también he de decir que hay una pequeña diferencia en el flujo de ejecución. Puesto que la condición de salida está debajo del código, con un do while nos aseguramos de que el código se ejecute siempre al menos una vez, se cumpla o no la condición de salida.

let i = 100;

do {
	console.log("El valor de i es: " + i);
	i+=5;
} while (i <= 50);

Se ejecuta una vez aunque no se cumpla nunca la condición de entrada al bucle. Inicialmente i vale 100, un bucle for o un bucle while no se ejecutarían ni una sola vez, en cambio el bucle do while se ejecuta la primera vez.

El valor de i es: 100

Ejemplo de uso con el bucle do while

Supón que tienes un bucle while y a continuación, un if que depende de que este bucle devuelva algún valor. En caso de que el while sea false ya de entrada, provocará un error en el if que está esperando algún valor.
En cambio, con un do while, aunque esto ocurra, se ejecutará si o si al menos una vez, aunque sea false desde un principio.

Podría poner un montón de códigos de ejemplo con el bucle do while, pero vamos a dejar el capítulo aquí, quiero que sigas avanzando. Ya lo iremos utilizando durante el curso.


Ejercicios de JavaScript

  1. Crea un bucle do while que represente lo mismo que este bucle for:
  2. for(i=1;i<=10;i++){
    	document.write("El valor del bucle es: " + i + "<br>");
    }

La solución la encontrarás aquí: Soluciones de ejercicios de JavaScript.


Comentarios

Si te quedan dudas sobre el temario, sobre JavaScript o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.

Twitter

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.