veces
tenemos que controlar el orden de ejecución del código para lograr las funciones que queremos completar.
: el control de flujo es controlarnos en qué orden se debe ejecutar el código escrito para lograr nuestro propósito.
Hay tres estructuras principales en el control de procesos: estructura secuencial, estructura de rama y estructura de bucle. Estas tres estructuras representan el orden de ejecución del código.
La estructura secuencial es el control de proceso más simple y básico del programa. Todos los códigos que escribimos antes pertenecen a la estructura secuencial (es decir, se ejecutan de arriba a abajo). No tiene una estructura de sintaxis fija. Orden del código. En orden,
. En el proceso de ejecución del código de arriba a abajo, se ejecutan diferentes códigos de ruta de acuerdo con diferentes condiciones (el proceso de seleccionar uno entre múltiples códigos de ejecución), obteniendo así. resultados diferentes.1.21
El lenguaje js proporciona dos estructuras de rama. Declaración
// Ejecute el código si la condición es verdadera; de lo contrario, no haga nada
if (expresión condicional) {
// Lenguaje de código para ejecución cuando se establece la condición == Ejecutar solo cuando la expresión condicional es verdadera
}
Una declaración puede entenderse como un comportamiento. Las declaraciones de bucle y las declaraciones de rama son declaraciones típicas. Un programa consta de muchas declaraciones. , se dividirá en
la demostración del código
de declaración uno por unovar age=19; si(edad>=18){ console.log('Eres un adulto'); //Salida que ya eres adulto, porque edad=19;, si es mayor a 18, se ejecutará la declaración en el if } var edad=1; si(edad>=18){ console.log('Eres un adulto'); //No genera nada. edad = 1; <18, la declaración en if no se ejecutará, por lo que no hay }
proceso de ejecución
la estructura de sintaxis
// Si se establece la condición, ejecute el código en if; de lo contrario, ejecute el código en else
if (expresión condicional) {
//Código a ejecutar que cumple las condiciones
}else{
//Código que no cumple con las condiciones de ejecución
}
Proceso de ejecución
Demostración del código
var age=prompt('Ingrese su edad');//Entrada del usuario if(age>=18){ console.log('Ya puedes beber'); }demás{ console.log('Lo sentimos, los menores sólo pueden beber calcio AD'); } //Juzga si el año es un año de ejecución var año=prompt('Ingrese el año:'); if(año%4==0&&año%100!=0||año%400==0){ alert('El año que ingresó es bisiesto'); }demás{ alert('El año que ingresó es un año normal'); }
estructura de sintaxis
// Adecuado para verificar múltiples condiciones
if (expresión condicional) {
Declaración 1;
}si no (expresión condicional){
Declaración 2;
}si no (expresión condicional){
Declaración 3
...
}más{
//Ejecuta este código si no se cumplen las condiciones anteriores
}
Control de proceso
Demostración de código
//Mini calculadora: ingrese dos números y símbolos de operación para obtener el correspondiente var yi = +prompt('Ingrese el primer número'); // Utilice suma, resta, multiplicación y división para convertir implícitamente a tipo numérico, o use praseInt (variable) o parsefloat (variable) enteros y números de punto flotante var fuhao = Prompt('Ingrese el operador'); var er = +prompt('Ingrese el segundo número'); si (fuhao == '+') { var shu = yi + er; } si no (fuhao == '-') { var shu = yi - er; } si no (fuhao == '/') { var shu = yi / er; } si no (fuhao == '*') { var shu = yi * er; } si no (fuhao == '%') { var shu = yi % er; } demás { alert('Ingrese lo requerido:'); } alert(shu);
La declaración de cambio también es una declaración de múltiples ramas. Se utiliza para ejecutar diferentes códigos según diferentes condiciones. Cuando desee establecer una serie de valores específicos para las variables, cambie el interruptor
(. expresión) {
case value1:
//El código que se ejecutará cuando la expresión sea igual al valor1
break;
case value2:
//El código que se ejecutará cuando la expresión sea igual al valor2
break;
//
El código que se ejecutará cuando la expresión
sea igual al valor2;no es igual a ningún valor
}
Control de proceso
Código de demostración
var fruit =prompt('Ingrese la fruta que desea comprar:'); cambiar(fruta){ caso 'manzana': alert('El precio de las manzanas es: 3,5/maliciosa'); romper; caso 'lichi': alert('El precio de los lichis es: 10,5/jin'); romper; por defecto: alerta('No hay fruta'); }
Tenga en cuenta
La diferencia entre la declaración de cambio y la declaración if else
generalmente
se puede convertir entre sí.
la situación en la que el caso es una comparación para determinar el valor, mientras que la declaración if...else... es más flexible y a menudo se usa para juzgar el rango (mayor que, igual a un cierto rango
La declaración de cambio realiza un juicio condicional y
Ejecuta directamente la declaración condicional del programa, lo cual es más eficiente. Sin embargo, las declaraciones if...else... tienen varias condiciones y deben juzgarse varias veces.
Cuando hay menos ramas, la eficiencia de ejecución de la declaración if...else... es mayor que la de la declaración switch.
Cuando hay muchas ramas, la eficiencia de ejecución de la declaración switch es mayor y la estructura es más clara.
en problemas prácticos, hay muchas operaciones repetidas, por lo que para realizar tales operaciones en el programa,
hay
tres tipos principales de
Declaraciones de bucle:
en el programa, un grupo de declaraciones que se ejecutan repetidamente se denomina cuerpo de bucle. Si puede continuar ejecutándose repetidamente depende de las condiciones. terminación del bucle.
La declaración compuesta por el cuerpo del bucle y la condición de terminación del bucle se denomina instrucción de bucle.
Laestructura de sintaxis
del bucle for se utiliza principalmente para repetir cierto código varias veces, generalmente relacionado con el conteo. La estructura de la declaración es la siguiente
para (variable de inicialización; expresión condicional; expresión de operación) {
//Cuerpo del bucle
}
control de proceso
Demostración de código
para (var i=1;i<=10;i++){ console.log('¿Te gusto?'); }//Calcule el puntaje total de la clase y el puntaje promedio var num = Prompt('Ingrese el número total de personas en la clase') suma var = 0, promedio = 0; para (var i = 1; i <= num; i++) { var puntuación = solicitud('Ingrese la puntuación del estudiante ' + i + '') //Los datos tomados del mensaje son una cadena y deben convertirse en una suma numérica += parseInt(score); } promedio = suma/núm; alert('Puntuación total de la clase:' + suma); alert('Puntuación promedio de la clase:' + suma);//Imprime 5 corazones en una línea para (var i=0;i<=4;i++){ console.log('*'); }
Bucle for de doble capa (anidamiento de bucles)
El anidamiento de bucles se refiere a la estructura gramatical de definir una instrucción de bucle dentro de una instrucción de bucle. Por ejemplo, anidar un bucle for dentro de un bucle for. Llamamos a esta instrucción de bucle for Doble capa. bucle
Llamamos al bucle interno bucle interno y al bucle externo bucle externo. El
bucle externo se repite una vez y el bucle interno se ejecuta de principio a fin.
Demostración de código
// Nivel bajo: 5 filas y 5 columnas var str. =''; para (var i=0;i<=4;i++){ para (var j=0;j<=4;j++){ cadena+='*'; } cadena+='n'; } consola.log(str); //Avanzado: n filas y n columnas var filas = Prompt('Ingrese el número de filas:'); var cols = Prompt('Ingrese el número de columnas'); var cadena=''; para (var i = 1; i <= filas; i++) { for (var j = 1; j <= cols; j++) { cadena+='*'; } cadena+='n'; } consola.log(str); //Imprimir triángulo invertido var str=''; para (var i=1;i<=10;i++){ para (var j=i;j<=10;j++){ cadena+='*'; } cadena+='n'; } consola.log(str); /* 1 ********** 10 2 *********9 3 ********8 4 *******7 5******6 6*****5 7****4 8***3 9**2 10 *1 */// Algoritmo central: var j=i;j<=10;j++//Idea: primero analice los resultados y observe la relación entre filas y columnas. Luego determine el algoritmo del bucle interno // imprima un triángulo equilátero, la misma idea que arriba. var cadena=''; para (var i=1;i<=9;i++){ para (var j=1;j<=i;j++){ cadena+='*'; } cadena+='n'; } console.log(str);//Para imprimir la tabla de multiplicar, reemplaza el asterisco del triángulo equilátero con la ecuación var str = ''; para (var i = 1; i <= 9; i++) { para (var j = 1; j <= i; j++) { /* cadena+='*'; */ cadena += i + '*' + i + '=' + i * j + ' t'; } cadena += 'n'; } console.log(str);// Recuerde: el bucle externo se repite una vez y el bucle interno se ejecuta de principio a fin. Simplemente imprime la esencia de los gráficos.
El resumen de los bucles
bucle while
La declaración while puede ejecutar un fragmento de código específico en un bucle bajo la premisa de que la expresión condicional es verdadera, hasta que la expresión lo haga. no cumple la condición, el bucle termina
.La estructura de sintaxis de la declaración
while while (expresión condicional) {.
// Declaración del cuerpo del bucle;
}
Idea de ejecución:
primero ejecute la expresión condicional, si la condición es verdadera, luego ejecute el código del cuerpo del bucle; de lo contrario, salga del bucle y ejecute el siguiente código
para ejecutar el
código del cuerpo del bucle. Cuando se ejecuta el código, el programa continuará juzgando y ejecutando la expresión condicional. Si la condición aún es verdadera, continuará ejecutando el cuerpo del bucle. Todo el proceso del cuerpo del bucle no finalizará hasta que la condición del bucle sea falsa
. como sigue
Demostración de código
var num=1; //Inicializar variables while(num<=10){//Expresión condicional console.log('Hola mundo'); num++;//Expresión de operación }
Nota:
También hay una expresión de operación en while para completar la actualización del contador y evitar un bucle infinito (no agregué una expresión de operación, pero cuando ejecuté el código, la interfaz de Google Chrome estaba negro).
También debe haber variables de inicialización del contador.
El bucle while puede ser equivalente al bucle for hasta cierto punto. Solo necesita colocar las variables inicializadas, las expresiones condicionales y las expresiones de operación en el bucle for.
Demostración de código
//
Imprime la vida de una persona, desde 1 año hasta 120 años var age = 1; mientras (edad <= 120) { console.log('Esta persona tiene este año' + edad + 'años'); edad++; } //2. Calcular la suma de todos los números enteros entre 1 y 100 var suma = 0, yo = 1; mientras (yo <= 100) { suma += i; yo ++; } console.log(suma); // 3. Abre un cuadro de diálogo, ¿me amas? Si ingresas Te amo, aparecerá el mensaje final; de lo contrario, seguirá preguntando var message='¿Me amas'; mientras(mensaje!=='Te amo'){ mensaje=prompt('¿Me amas?'); } alerta ('Yo también te amo');
bucle do... while la
declaración while es en realidad una variante de la declaración while. Este bucle primero ejecutará el bloque de código una vez y luego juzgará la expresión condicional. es verdadero, el cuerpo del bucle se ejecutará repetidamente; de lo contrario, saldrá del bucle
do... La estructura de sintaxis de la declaración while es la siguiente
do {
// Código del cuerpo del bucle: repita el código del cuerpo del bucle cuando la expresión condicional sea verdadera
}
Idea de ejecución:
ejecute el código del cuerpo del bucle una vez
y luego ejecute la expresión condicional. Si el resultado es verdadero, continúe ejecutando el código del cuerpo del bucle. es falso, luego salga del ciclo y continúe ejecutando el siguiente código.
Nota: primero ejecute la declaración del cuerpo del ciclo y luego juzgue. Descubriremos que la declaración del ciclo do... while ejecutará el cuerpo del ciclo al menos una vez.
control de procesos
Demostración de código
//Imprime la vida de una persona, de 1 a 120 años var edad = 1; hacer { console.log('Esta persona tiene este año' + edad + 'años'); edad++; } mientras (edad <= 120); //2. Calcular la suma de todos los números enteros entre 1 y 100 var suma = 0, yo = 1; hacer { suma += i; yo ++; } mientras (yo <= 100) console.log(suma); // 3. Abre un cuadro de diálogo, ¿me amas? Si ingresas Te amo, aparecerá el mensaje final; de lo contrario, seguirá preguntando var message = '¿Me amas'; hacer { mensaje = mensaje('¿Me amas?'); } mientras (mensaje !== 'Te amo'); alert('Yo también te amo');
Resumen de bucles
:continuar es La palabra se usa para salir de este bucle inmediatamente y continuar. siguiente bucle (el código después de continuar en el cuerpo de este bucle se ejecutará una vez menos).
Por ejemplo: si comes 5 panecillos y hay insectos en el tercer panecillo, desecha el tercer panecillo y continúa comiendo el cuarto y quinto panecillos.
Código de demostración
para (var i = 1; i <= 5; i++) {. si (yo == 3) { continuar; } console.log('Me comí el ' + i + 'ésimo panecillo'); } Resultado: //Me comí el primer panecillo //Me comí el segundo panecillo //Me comí el cuarto panecillo //Me comí el quinto panecillo
palabra clave
break La palabra clave break se utiliza para saltar de todo el bucle inmediatamente (Fin del ciclo)
Por ejemplo: después de comer cinco panecillos, encontré un gusano en el tercero y perdí el apetito.
Ejemplo de código
para (var i = 1; i <= 5; i++) { si (yo == 3) { romper; } console.log('Me comí el ' + i + 'ésimo panecillo'); } Resultado; // Me comí el primer panecillo al vapor // Me comí el segundo panecillo al vapor
identificador gramatical nomenclatura
variables, el nombre de la función debe ser significativo, el nombre de la variable es generalmente un sustantivo, el nombre de la función es generalmenteun comentario de una sola línea
para (var i = 1; i <= 5; i++) { si (yo == 3) { continuar; //Tenga en cuenta que hay un espacio antes del comentario de una sola línea } console.log('Me comí el ' + i + 'ésimo panecillo'); }
Especificación del operador
//Reserve un espacio en los lados izquierdo y derecho del operador para (var i = 1; i <= 5; i++) { si (yo == 3) { romper; } console.log('Me comí el ' + i + 'ésimo panecillo'); }