Estructuras de Control en JavaScript
Estructuras de Control en JavaScript
Estructuras de Control en JavaScript
relevante.
¿Qué son las Estructuras de Control en JavaScript?
En cualquier programa, una declaración típica tiene como objetivo ejecutar un comando o, en
palabras simples, hacer algo. Las estructuras de control son similares a otras declaraciones. Pero son
diferentes en cierto ángulo. Tienen la capacidad de determinar cuál de las otras declaraciones debe
ejecutarse y en qué momento debe ejecutarse.
Las declaraciones de control están destinadas a permitir a los usuarios escribir scripts que determinen
qué líneas de código se evalúan y cuántas veces se evalúan. Las declaraciones de control se clasifican
en dos tipos.
* Declaraciones Condicionales: Son las que toman una decisión. Hay una expresión que se pasa y
luego la declaración condicional decide sobre ella. Es SÍ o NO.
* Declaraciones iterativas (bucles): este es un tipo de declaración que se repite hasta que se cumple
una condición. En palabras simples, si tenemos una expresión, hasta que se cumpla, la declaración
seguirá repitiéndose.
Estructuras de Control Condicionales
Un programa (script) consiste en una lista de enunciados que se van ejecutando a medida que se
cargan. Sin embargo, en ocasiones nos interesa controlar el flujo de la ejecución estableciendo
alternativas, es decir, que una serie de enunciados se ejecuten en algunas ocasiones y en otras no.
Para permitir esto existen las estructuras condicionales.
if ... else
Por medio de if se puede indicar una condición que, de cumplirse, permite la ejecución de uno o más
enunciados. Por medio de else se puede establecer una alternativa, aunque su uso es opcional.
Por ejemplo, supongamos que queremos lanzar una advertencia si el valor de una variable es mayor
que 100, y otra si es mayor:
Se pueden concatenar tantos else if como se quiera, pero cuando se trata de analizar el valor de una
variable suele ser más efectivo emplear la estructura condicional que veremos a continuación.
switch
Por medio de switch se puede listar una serie de bloques de enunciados que se ejecuten
dependiendo del valor de una variable. La sintaxis sería:
Por ejemplo, supongamos que analizamos el valor de una variable y que dependiendo de éste
lanzamos un mensaje de alerta:
break indica que el bloque de código puede dejar de interpretarse cuando se haya dado una
coincidencia.
La especificación de default: es opcional. En este caso, si no se emplease simplemente no se lanzaría
ninguna alerta en caso de que el valor de nombrePersonaje no coincidiese con ninguno de los
nombres recogidos en switch.
Operadores lógicos
Para los otros dos operadores -- && y || --, cada condición que se quiera establecer debe ir entre
paréntesis. Por ejemplo, la siguiente condición:
haría que sólo se mostrase la alerta en caso de que a sea eso, un número par positivo.
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. La sintaxis es la siguiente:
Parámetros
condición
Una expresión que se evalúa como true o false.
expr1, expr2
Expresión con valores de algún tipo.
También puede usar operaciones ternarias en espacio vacío con el propósito de realizar diferentes
operaciones:
También puede realizar más de una operación por caso, separándolas con una coma:
También puede realizar más de una operación durante la asignación de un valor. En este caso, el
último valor separado por una coma del paréntesis será el valor asignado.
Los bucles ofrecen una forma rápida y sencilla de hacer algo repetidamente. Puedes pensar en un
bucle como una versión computarizada del juego en la que le dices a alguien que dé X pasos en una
dirección y luego Y pasos en otra. Por ejemplo, la idea "Ve cinco pasos hacia el este" se podría
expresar de esta manera como un bucle:
Hay muchos diferentes tipos de bucles, pero esencialmente, todos hacen lo mismo: repiten una
acción varias veces. (¡Ten en cuenta que es posible que ese número sea cero!).
Los diversos mecanismos de bucle ofrecen diferentes formas de determinar los puntos de inicio y
terminación del bucle. Hay varias situaciones que son fácilmente atendidas por un tipo de bucle que
por otros.
Declaración for
Un ciclo for se repite hasta que una condición especificada se evalúe como false. El bucle for de
JavaScript es similar al bucle for de Java y C. Una declaración for tiene el siguiente aspecto:
Cuando se ejecuta un bucle for, ocurre lo siguiente:
3. Se ejecuta la instrucción. Para ejecutar varias instrucciones, usa una declaración de bloque ({ ... })
para agrupar esas declaraciones.
Declaración do...while
La instrucción do...while se repite hasta que una condición especificada se evalúe como falsa. Una
declaración do...while tiene el siguiente aspecto:
expresión siempre se ejecuta una vez antes de que se verifique la condición. (Para ejecutar varias instrucciones,
usa una declaración de bloque ({ ... }) para agrupar esas declaraciones).
Si condición es true, la declaración se ejecuta de nuevo. Al final de cada ejecución, se comprueba la condición.
Cuando la condición es false, la ejecución se detiene y el control pasa a la declaración que sigue a do...while.
En el siguiente ejemplo, el bucle do itera al menos una vez y se repite hasta que i ya no sea menor
que 5.
Declaración while
Una declaración while ejecuta sus instrucciones siempre que una condición especificada se evalúe
como true. Una instrucción while tiene el siguiente aspecto:
Si la condición se vuelve false, la instrucción dentro del bucle se deja de ejecutar y el control pasa a la
instrucción que sigue al bucle.
La prueba de condición ocurre antes de que se ejecute la expresión en el bucle. Si la condición devuelve true,
se ejecuta la expresión y la condición se prueba de nuevo. Si la condición devuelve false, la ejecución se
detiene y el control se pasa a la instrucción que sigue a while.
Para ejecutar varias instrucciones, usa una declaración de bloque ({ ... }) para agrupar esas declaraciones.
El siguiente ciclo del while se repite siempre que n sea menor que 3:
Declaración for...in
La instrucción for...in itera una variable especificada sobre todas las propiedades enumerables de un
objeto. Para cada propiedad distinta, JavaScript ejecuta las instrucciones especificadas. Una
declaración for...in tiene el siguiente aspecto:
Ejemplo. La siguiente función toma como argumento un objeto y el nombre del objeto. Luego itera sobre
todas las propiedades del objeto y devuelve una cadena que enumera los nombres de las propiedades y sus
valores.
Ejemplos y Referencias
Detalles para switch
. Si varios casos coinciden con un valor de caso, el primero El caso está seleccionado.
. Si no se encuentran casos coincidentes, el programa continúa hasta predeterminado etiqueta.
. Si no se encuentra una etiqueta predeterminada, el programa continúa con la instrucción (es)
después del interruptor.
Comparación estricta
El condicional switch usa comparación estricta ( = = = ).
Los valores deben ser del mismo tipo para que coincidan.
Una comparación estricta solo puede ser cierta si los operandos son del mismo tipo.
En este ejemplo no habrá coincidencia para x:
https://www.w3schools.com/js/js_loop_for.asp
Expresión 2
. A menudo, la expresión 2 se usa para evaluar la condición de la variable inicial.
. Este no es siempre el caso. A JavaScript no le importa. La expresión 2 es También opcional.
. Si la expresión 2 vuelve a ser verdadera, el bucle comenzará nuevamente. Si devuelve falso, el el bucle
terminará.
Expresión 3
. A menudo, la expresión 3 incrementa el valor de la variable inicial.
. Este no es siempre el caso. A JavaScript no le importa. La expresión 3 es opcional.
. La expresión 3 puede hacer algo así como un incremento negativo ( i - ), positivo incremento ( i = i + 15 ), o
cualquier otra cosa.
. La expresión 3 también se puede omitir (como cuando incrementa sus valores dentro del bucle):
Ejemplo explicado
. los para adentro el bucle se itera sobre un persona objeto
. Cada iteración devuelve un tecla ( x )
. La clave se utiliza para acceder a la valor de la llave
. El valor de la clave es persona [ x ]
El JavaScript la declaración for in también puede recorrer las propiedades de una matriz: