Compartir a través de


if...else (Instrucción)

Ejecuta de forma condicional un grupo de instrucciones, dependiendo del valor de una expresión.

if (condition)
   statement1
[else
   statement2] 

Argumentos

  • condition
    Obligatorio. Expresión booleana. Si el valor de condition es null o undefined, condition se trata como False.

  • statement1
    Obligatorio. Instrucción que se va a ejecutar si condition es True. Puede ser una instrucción compuesta.

  • statement2
    Opcional. Instrucción que se va a ejecutar si condition es False. Puede ser una instrucción compuesta.

Comentarios

Generalmente es una buena práctica encerrar statement1 y statement2 entre llaves ({}) en aras de una mayor claridad y para evitar errores inadvertidos.

Ejemplo

En el ejemplo siguiente, se puede pensar que else se utiliza con la primera instrucción if pero, en realidad, se utiliza con la segunda.

var z = 3;
if (x == 5)
    if (y == 6)
        z = 17;
else
    z = 20;

El ejemplo anterior es equivalente al código siguiente:

var z = 3;
if (x == 5)
    {
    if (y == 6)
        z = 17;
    else
        z = 20;
    }

Si se cambia el código como se indica a continuación se elimina cualquier ambigüedad:

var z = 3;
if (x == 5)
    {
    if (y == 6)
        z = 17;
    }
else
    z = 20;

De forma similar, si se desea agregar una instrucción a statement1 y no se usan llaves, se puede crear un error involuntariamente:

if (x == 5)
    z = 7;
    q = 42;
else
    z = 19;

En este caso, existe un error de sintaxis, porque hay más de una instrucción entre las instrucciones if y else. Las llaves son necesarias a ambos lados de las instrucciones entre if y else.

Requisitos

Versión 1

Vea también

Referencia

Operador condicional ternario (?:)