Js es la abreviatura de si. JavaScript: if y else - declaraciones condicionales

Declaraciones condicionales

Las declaraciones condicionales le permiten omitir o ejecutar otras declaraciones según el valor de una expresión específica. Estas declaraciones son puntos de decisión en un programa y a veces también se denominan operadores de sucursales.

Si imagina que un programa es una carretera y el intérprete de JavaScript es un viajero que camina por ella, entonces las declaraciones condicionales pueden considerarse como encrucijadas en las que el código del programa se bifurca en dos o más carreteras, y en dichas encrucijadas el intérprete debe elegir cuál camino a tomar a continuación.

declaración si/si no

La declaración if es una declaración de control básica que permite al intérprete de JavaScript tomar decisiones o ejecutar declaraciones con mayor precisión, en función de condiciones. La declaración if tiene dos formas. Primero:

declaración if (expresión)

De esta forma, primero se evalúa la expresión. Si el resultado obtenido es verdadero, entonces se ejecuta la declaración. Si la expresión devuelve falso, entonces la declaración no se ejecuta. Por ejemplo:

If (nombre de usuario == null) // Si la variable de nombre de usuario es nula o nombre de usuario no definido = "Alex"; // definirlo

Tenga en cuenta que los paréntesis alrededor de una expresión condicional son una parte obligatoria de la sintaxis de la declaración if.

La segunda forma de la declaración if introduce una cláusula else que se ejecuta cuando la expresión se evalúa como falsa. Su sintaxis es:

if (expresión) declaración1 else declaración2

Este formulario ejecuta la instrucción 1 si la expresión se evalúa como verdadera y la instrucción 2 si la expresión se evalúa como falsa. Por ejemplo:

If (n == 1) console.log("1 mensaje nuevo recibido."); else console.log("Recibido " + n + " mensajes nuevos.");

más si declaración

La declaración if/else evalúa el valor de una expresión y ejecuta uno u otro fragmento de código de programa, dependiendo del resultado. Pero ¿qué pasa si necesitas ejecutar uno de muchos fragmentos? Una posible forma de hacer esto es utilizar una declaración else if. Formalmente, no es un operador de JavaScript independiente; Este es solo un estilo de programación común que utiliza una declaración if/else repetida:

If (n == 1) ( // Ejecutar bloque 1 ) else if (n == 2) ( // Ejecutar bloque 2 ) else if (n == 3) ( // Ejecutar bloque 3 ) else ( // Si ninguno una de las sentencias else anteriores no fue ejecutada, ejecute el bloque 4)

No hay nada especial en esta pieza. Es simplemente una secuencia de declaraciones if, donde cada declaración if es parte de la cláusula else de la declaración anterior.

declaración de cambio

Una declaración if crea una rama en el flujo del programa, y ​​se pueden implementar ramificaciones de múltiples estados usando varias declaraciones if más. Sin embargo, esta no siempre es la mejor solución, especialmente si todas las ramas dependen del valor de la misma expresión. En este caso, es un desperdicio volver a evaluar la misma expresión en varias declaraciones if.

La declaración de cambio está diseñada específicamente para tales situaciones. La palabra clave switch va seguida de una expresión entre paréntesis y un bloque de código entre llaves:

cambiar(expresión) (instrucciones)

Sin embargo, la sintaxis completa de una declaración de cambio es más compleja de lo que se muestra aquí. Varios lugares de un bloque están marcados con la palabra clave case seguida de una expresión y dos puntos.

Cuando se ejecuta una instrucción de cambio, evalúa el valor de la expresión y luego busca una etiqueta de caso que coincida con ese valor (la coincidencia se determina utilizando el operador de identidad ===). Si se encuentra la etiqueta, se ejecuta el bloque de código, comenzando con la primera declaración que sigue a la etiqueta del caso. Si no se encuentra una etiqueta de caso con un valor coincidente, la ejecución comienza con la primera instrucción que sigue a la etiqueta especial predeterminada: . Si falta la etiqueta predeterminada:, se omite todo el bloque de declaración de cambio.

El funcionamiento de la sentencia switch es difícil de explicar con palabras, la explicación es mucho más clara con un ejemplo. La siguiente declaración de cambio es equivalente a las declaraciones repetidas if/else que se muestran en el ejemplo anterior:

Switch(n) ( caso 1: // Ejecutado si n === 1 // Ejecutar interrupción del bloque 1; // Detener aquí caso 2: // Ejecutado si n === 2 // Ejecutar interrupción del bloque 2; // Detener aquí caso 3: // Ejecutar si n === 3 // Ejecutar interrupción del bloque 3; // Detener aquí default: // Si todo lo demás falla... // Ejecutar interrupción del bloque 4; // Detener aquí)

Tenga en cuenta la palabra clave break al final de cada bloque de casos. La declaración de interrupción hace que el control se transfiera al final de la declaración de cambio y la ejecución de las siguientes declaraciones continúe. Las declaraciones de caso en una declaración de cambio especifican solo el punto inicial del código del programa que se ejecutará, pero no especifican ningún punto final.

Si no hay declaraciones de interrupción, la declaración de cambio comenzará a ejecutar el bloque de código con la etiqueta de caso correspondiente al valor de la expresión y continuará ejecutando las declaraciones hasta llegar al final del bloque. En casos raros, esto es útil para escribir código que pasa de una etiqueta de caso a la siguiente, pero en el 99% de los casos debes finalizar cuidadosamente cada bloque de caso con una declaración de interrupción. (Cuando use un interruptor dentro de una función, puede usar una declaración de retorno en lugar de una interrupción. Ambas declaraciones sirven para terminar la declaración de cambio y evitar que pase a la siguiente etiqueta de caso).

A continuación se muestra un ejemplo más práctico del uso de la instrucción switch, que convierte un valor en una cadena de una manera que depende del tipo de valor:

Función convert(x) ( switch(typeof x) ( // Convertir un número a un entero hexadecimal case "number": return x.toString(16); // Devolver una cadena entre comillas case "string": return """ + x + """; // Cualquier otro tipo se convierte de la forma habitual predeterminada: return x.toString(); ) ) console.log(convert(1067)); // Resultado "42b"

Tenga en cuenta que en los dos ejemplos anteriores, las palabras clave case iban seguidas de números o cadenas literales. Así es como se usa con mayor frecuencia la declaración de cambio en la práctica, pero el estándar ECMAScript le permite especificar expresiones arbitrarias después del caso.

La instrucción switch primero evalúa la expresión después de la palabra clave switch y luego las expresiones case en el orden en que se especifican, hasta que se encuentra un valor coincidente. El hecho de una coincidencia se determina utilizando el operador de identidad === en lugar del operador de igualdad ==, por lo que las expresiones deben coincidir sin ninguna conversión de tipo.

Debido a que no todas las expresiones de caso se evalúan cada vez que se ejecuta una instrucción de cambio, debe evitar el uso de expresiones de caso que tengan efectos secundarios como llamadas a funciones y asignaciones. Es más seguro limitar las expresiones de casos a expresiones constantes.

Como se explicó anteriormente, si ninguna expresión de caso coincide con una declaración de cambio, la declaración de cambio comienza a ejecutar la declaración etiquetada como predeterminado:. Si falta la etiqueta predeterminada:, el cuerpo de la declaración de cambio se omite por completo. Tenga en cuenta que en los ejemplos anteriores, la etiqueta predeterminada: se incluye al final del cuerpo de la declaración de cambio, después de todas las etiquetas de casos. Este es un lugar lógico y común para esto, pero de hecho puede ubicarse en cualquier lugar dentro de una declaración de cambio.

En la vida cotidiana muchas veces es necesario tomar algún tipo de decisión, dependiendo de alguna condición. Por ejemplo, si el fin de semana hace calor, iremos a la playa; en caso contrario, si está nublado, nos sentaremos en casa.

Esto también sucede muy a menudo en programación. Hay dos declaraciones condicionales para esto: if-else y switch-case. En este artículo le hablaré sobre el operador if-else y en el próximo artículo sobre switch-case.

La sintaxis de la declaración condicional if-else es la siguiente:


Si la condición es verdadera, entonces se ejecuta el código del bloque if; de lo contrario, si la condición es falsa, entonces se ejecuta el código del bloque else.

Para una mejor comprensión, tomemos un ejemplo tan simple, tenemos una cierta cantidad de dinero y queremos comprar un automóvil, y aquí surge inmediatamente la siguiente condición: si tenemos suficiente dinero, entonces podemos comprar este automóvil, de lo contrario no puedo.

Var dinero = 35000; // Digamos que tenemos 35.000 euros // El coche que queremos comprar cuesta 50.000 euros. Y surge la siguiente condición if(money > 50000)( document.write("Podemos comprar un auto"); )else( document.write("No hay suficiente dinero para comprar un auto"); )

Guardamos el documento, lo abrimos en el navegador y vemos que en la página aparece el siguiente mensaje: “No hay suficiente dinero para comprar un coche”. Si tuviéramos más de 50.000 euros, entonces se ejecutaría el código del bloque if. Si tuviéramos exactamente 50 000 euros, tampoco podríamos comprar un coche, porque 50 000 no son más de 50 000. Para que la condición en este caso sea cierta, debemos escribir un signo mayor o igual (>=) .

¡Comentario! La operación lógica igual se escribe con dos signos de igual (==). También existe una operación lógica menor o igual a (

usando llaves

Si solo hay un operador, entonces las llaves no son necesarias; si hay más de un operador en el bloque, entonces se requieren llaves.

El ejemplo anterior funcionará perfectamente sin llaves, ya que ambos bloques contienen solo una declaración.

En su interior se pueden escribir operaciones lógicas, ya sean simples o complejas. También puede utilizar los operadores AND (&&) y OR (||).

¡Comentario! La presencia del bloque else es opcional.

Por ejemplo, si a es igual a b y c es igual a d, entonces mostramos el mensaje correspondiente; de ​​lo contrario, si no hay ningún bloque más, simplemente pasamos a la siguiente línea.

Var a = 4, b = 4, c = 8, d = 8; if((a == b) && (c == d)) document.write("a es igual a b Y c es igual a d"); document.write("Siguiente línea de código");

Si - más si - más declaración

Después del bloque if, puede haber uno o más bloques else if, y al final hay un bloque else. Esto es útil cuando necesita utilizar más de una condición.


Para una mejor comprensión, tomemos un ejemplo de la vida cotidiana. Por ejemplo, tenemos una determinada cantidad de enchufes. Si solo tenemos un enchufe en la habitación, entonces podemos conectar solo un dispositivo, si hay dos enchufes, entonces podemos conectar dos dispositivos, y si hay más, entonces podemos conectar todos los dispositivos de la casa a la red eléctrica. .

Ahora pasemos a la programación.

Toma Var = 2; // Número de enchufes en la casa if(socket == 1)  document.write("

Sólo podemos conectar un dispositivo

"); si no (socket == 2)( documento.write("

Sólo podemos conectar dos dispositivos

"); documento.escribir("

Por ejemplo TV y computadora portátil.

"); )else( documento.escribir("

Podemos conectar todos los dispositivos de la casa a la red eléctrica

"); }

Dependiendo del valor de la variable del socket funcionará uno u otro bloque de código. Como probablemente ya entendiste, si el socket es igual a 1, entonces el primer bloque de código funcionará. Si socket es igual a 2, entonces el segundo bloque de código funcionará y si socket tiene cualquier otro valor (incluso un número negativo), entonces funcionará el tercer bloque de código.

Taquigrafía de si no

La notación abreviada se puede utilizar cuando, dependiendo de alguna condición, una variable puede recibir uno u otro valor.


Por ejemplo, si el valor de la variable a es mayor que el valor de la variable b, entonces en la variable x escribiremos el siguiente mensaje, “La variable a es mayor que la variable b”, en caso contrario escribiremos que “La variable a es menor que la variable b”.

Var a = 50, b = 100, x; x = (a > b)? "

La variable a es mayor que la variable b

" : "

La variable a es menor que la variable b

"; // Muestra el resultado resultante document.write(x);

Eso es todo lo que quería contarte en este artículo. La declaración condicional if-else se utiliza en más de una forma en cada script, por lo que es muy importante conocerla y comprenderla. En el próximo artículo les contaré sobre otro caso de cambio de operador condicional.

En este ejemplo, primero declaramos cuatro variables usando la palabra clave var e inmediatamente les asignamos valores numéricos. A continuación, utilizando los operadores de incremento y decremento, cambiamos los valores de los números. La información se muestra mediante la función Eco (ver artículo " "). Para evitar escribir el nombre del objeto nuevamente, utilicé la construcción with().

Operadores logicos

Los operadores lógicos se utilizan al verificar las condiciones, para no repetirme, haré una abreviatura: el operando izquierdo es L.O. y el operando derecho es P.O.

  • && - "Y" lógico
  • || - "O"
  • ! - "NO"
  • > - L.O. más apartados de correos
  • >= - L.O. mayor o igual a P.O.
  • < - Л.О. меньше П.О.
  • = 5 && a= 5 || b== 100 ) //verdadero msg2 = "VERDADERO" ; más mensaje2 = "FALSO"; Ventana emergente (msg2, 5, título, vbInformation); //declaración condicional js if else if (! a) //false msg3 = "TRUE"; más mensaje3 = "FALSO"; Ventana emergente (msg3, 5, título, vbInformation); if (a&= 100) //falso msg4 = "VERDADERO"; más mensaje4 = "FALSO"; Ventana emergente (msg4, 5, título, vbInformation); )

    Como en el script anterior, aquí utilicé la construcción with para acortar el código del programa. Sin embargo, para mostrar información utilizamos la función Popup (ver artículo ""). Como resultado, los cuadros de diálogo se cerrarán automáticamente después de unos segundos. Tenga en cuenta que en este ejemplo no usamos llaves en la declaración condicional js if; son relevantes solo cuando necesita ejecutar no una línea de código, sino varias.

    Finalmente, veamos un ejemplo práctico como resolver una ecuación cuadrática:

    // Resolver una ecuación cuadrática // uravnenije_if_else.js // ************************************* *********** ********************************** var a, b, c, d, x, x1, x2; //Declarar variables a=- 2 ; segundo= 6 ; c= 20 ; //Buscando discriminante d= Math .pow (b, 2 ) - 4 * a* c; if (d== 0 ) ( x= b/ (2 * a) ; msg= "La ecuación tiene una solución, x es exactamente " + x ) else ( if (d> 0 ) ( x1= (- b+ Math . sqrt (d) ) / (2 * a); x2= (- b- Math .sqrt (d) ) / (2 * a); msg= "La ecuación tiene dos soluciones \n x1 exactamente " + x1 + "\ n x2 exactamente " + x2; // declaración condicional if else js ) else msg= "Sin solución" ; ) WScript.Echo (msg);

    JavaScript tiene una construcción condicional que afecta la ejecución del programa. Si (en inglés si) algo existe, algo es cierto, entonces haz una cosa, de lo contrario (en inglés más), haz otra cosa.

    si declaración

    Veamos inmediatamente cómo funciona la declaración if; es simple y no requiere mucha explicación.

    If (condición) (código a ejecutar si la condición es verdadera)

    Es simple: si la condición es verdadera, entonces se ejecuta el código del bloque (...).

    Dígito var = 4; if (dígito == 4) ( document.write("El valor del dígito variable es 4."); )

    Puedes hacer un código un poco extraño:

    Dígito var = 4; if (verdadero) ( ​​document.write("La condición es verdadera."); )

    otra declaración

    La declaración else se puede utilizar junto con la declaración if. Se traduce como "de lo contrario" y especifica un código alternativo.

    Dígito var = 4; si (dígito

    Preste atención a la diferente ortografía de las llaves en este ejemplo para las declaraciones if y else. No es necesario escribirlo así, ambas sintaxis son correctas.

    Después de la declaración else puede haber una nueva declaración if. Esto verificará múltiples condiciones.

    Dígito var = 4; si (dígito

    JavaScript no tiene una declaración elseif (en una palabra) como PHP.

    Si solo necesita ejecutar una instrucción, entonces no se necesitan llaves de bloque (...). En nuestro ejemplo, no es necesario escribirlos:

    Dígito var = 4; si (dígito

    Falso en JavaScript

    La declaración if (condición) evalúa y convierte la condición (expresión) entre paréntesis a un tipo booleano (verdadero o falso).

    Repitamos que hay una mentira en JavaScript.

    • Número 0 (cero).
    • Línea vacía "".
    • Valor booleano falso :)
    • El valor es nulo.
    • El valor no está definido.
    • El valor es NaN (no es un número).

    Todo lo demás es verdad.

    Un par de posibles errores:

    If ("falso") document.write("Esto es verdadero.
    "); si (falso) document.write("Esto es verdadero.

    ");

    Aquí debe distinguir la cadena "falso" (entre comillas) del valor booleano falso.

    If (" ") document.write("Esto es cierto.
    "); else document.write("Esto es falso.
    ");

    Aquí debe distinguir la línea " " (con un espacio dentro) de la línea vacía "". Un espacio dentro de una cadena hace que no esté vacía, sino que contenga un carácter. Para el intérprete, la letra o el espacio no importan: un carácter es un carácter.

    Otros condicionales en JavaScript
    • Construcción de interruptor de JavaScript.
    • Signo de interrogación del operador

    Reg.ru: dominios y hosting

    El mayor registrador y proveedor de alojamiento de Rusia.

    Más de 2 millones de nombres de dominio en servicio.

    Promoción, correo de dominio, soluciones empresariales.

    Más de 700.000 clientes en todo el mundo ya han elegido.

    Marco Bootstrap: diseño adaptable rápido

    Curso en vídeo paso a paso sobre los conceptos básicos del diseño adaptativo en el marco Bootstrap.

    Aprende a componer de forma sencilla, rápida y eficaz utilizando una potente y práctica herramienta.

    Diseño para ordenar y recibir pagos.

    *Pase el mouse sobre para pausar el desplazamiento.

    De vuelta atras

    Funciones y condiciones if-else en JavaScript

    A menudo, cuando se utiliza JavaScript, es necesario realizar diferentes acciones cuando se cumplen diferentes condiciones.

    Por ejemplo, escribió un script que verifica qué navegador utiliza un visitante cuando visita su sitio. Si es Internet Explorer se debe cargar una página especialmente diseñada para IE, si es cualquier otro navegador se debe cargar otra versión de esta página.

    La sintaxis general de una construcción if-else es la siguiente:

    Si (condición) (acción) más (acción2);

    Como ejemplo, considere el siguiente código:

    If (navegador=="MSIE") (alerta("Estás usando IE")) else (alerta("No estás usando IE"));

    Tenga en cuenta que se utilizan todas las letras minúsculas. Si escribe "SI", se producirá un error.

    Tenga en cuenta también que el signo doble igual (==) se utiliza para comparar.

    si escribimos navegador="MSIE", entonces simplemente asignaremos el valor MSIE variable nombrada navegador.

    cuando escribimos navegador=="MSIE", entonces JavaScript "entiende" que queremos hacer una comparación y no asignar un valor.

    Condiciones más difíciles si puedes crear simplemente agregándolos, por ejemplo, a una parte demás estructura ya existente si no:

    Si (condición) (acción1) más (si (otra condición) (acción2) más (acción3); );

    Por ejemplo:

    If (browser=="MSIE") ( alert("Estás usando IE") ) else ( if (browser=="Netscape") ( alert("Estás usando Firefox") ) else ( alert("Estás usando un navegador no reconocido: )")); );

    Operadores lógicos Y, O y NO

    Para un uso aún más flexible del diseño si no Puede utilizar los llamados operadores lógicos.

    Y se escribe como && y se usa cuando es necesario probar la veracidad de más de una condición.

    Por ejemplo: si hay huevos en el refrigerador y tocino en el refrigerador, entonces podemos comer huevos y tocino.

    La sintaxis es la siguiente:

    If (condición1 && condición2) (acción) if (hora==12 && minuto==0) (alerta("Mediodía!"));

    O se escribe como || y se utiliza cuando queremos comprobar la verdad de al menos una de dos o más condiciones. (Puedes obtener || manteniendo presionada la tecla Mayús y la tecla \)

    Por ejemplo: si hay leche en el frigorífico o hay agua en el frigorífico, entonces tenemos algo para beber.

    La sintaxis es la siguiente:

    If (condición1 || condición2) ( acción ) if (hora==11 || hora==10) ( alerta("¡Aún no es mediodía!") );

    No se escribe como ! y se utiliza para la negación.

    Por ejemplo: si no hay huevos ni tocino en el refrigerador, entonces no podemos comer ni huevos ni tocino.

    La sintaxis es:

    If (!(condición)) (acción) if (!(hora==11)) (alerta("No son las 11 en punto"));

    Funciones en JavaScript

    En lugar de simplemente agregar Javascript a la página y hacer que el navegador ejecute el código cuando llegue, puede hacer que el script se ejecute solo cuando ocurre un evento.

    Por ejemplo, creó JavaScript cuya tarea es cambiar el color de fondo de la página cuando hace clic en un botón determinado. En este caso, es necesario "decirle" al navegador que este script no debe ejecutarse simplemente porque es su turno.

    Para evitar que el navegador ejecute el script cuando se carga, debe escribir el script como una función.

    En este caso el código JavaScript no se ejecutará hasta que le “pidamos” que lo haga de forma especial.

    Mire este ejemplo de un script escrito como una función:

    función mifunción() (alerta("¡Bienvenido!"); )

    Haga clic en el botón para ver qué hace este script:

    si la linea alerta("¡Bienvenido!"); Si no estuviera escrito dentro de una función, se ejecutaría cada vez que el navegador llegara a esa línea. Pero como la escribimos dentro de una función, esta línea no se ejecuta hasta que hacemos clic en el botón.

    La llamada a la función (es decir, el acceso a ella) ocurre en esta línea:

    Como puede ver, hemos colocado un botón en el formulario y agregado un evento. onClick="mifunción()" para el botón.

    En lecciones futuras veremos otros tipos de eventos que desencadenan funciones.

    La sintaxis general de las funciones es la siguiente:

    Función nombre de función(variable1, variable2,..., variableN) ( ​​// Aquí está el cuerpo de la función, las acciones que realiza)

    Llaves: ( y ) indican el inicio y el final de una función.

    Un error típico al crear funciones es la falta de atención y el ignorar la importancia del carácter entre mayúsculas y minúsculas. La palabra función debe ser exactamente función. La opción Función o FUNCIÓN provocará un error.

    Además, el uso de letras mayúsculas influye al especificar nombres de variables. Si tienes una función llamada mifunción(), luego un intento de dirigirse a ella como Mi función(), MIFUNCIÓN() o MiFunción() provocará un error.

    ¿Te gustó el material y quieres agradecerme?
    ¡Simplemente comparte con tus amigos y colegas!


    Ver también:

Publicaciones sobre el tema.