Tracks
/
JavaScript
JavaScript
/
Temario
/
Condicionales
Co

Condicionales en JavaScript

42 ejercicios

Acerca de Condicionales

Sintaxis general

Una forma habitual de ejecutar código de forma condicional en JavaScript es el condicional if. Consta de la palabra clave if, una condición entre paréntesis y un bloque de código entre llaves. El bloque de código solo se ejecutará si la condición se evalúa como true.

if (condition) {
  // code that is executed if "condition" is true
}

Se puede usar por sí solo o combinarse con la palabra clave else.

if (condition) {
  // code that is executed if "condition" is true
} else {
  // code that is executed otherwise
}

Condicionales anidados

Para anidar otra condición en la instrucción else, puedes usar else if. Ten en cuenta que en JavaScript no existe la palabra clave elseif. En su lugar, escribe else seguido de otro condicional if.

if (condition1) {
  // code that is executed if "condition1" is true
} else if (condition2) {
  // code that is executed if "condition2" is true
  // but "condition1" was false
} else {
  // code that is executed otherwise
}

En teoría, puedes anidar tantas condiciones adicionales como quieras. En la práctica, en estos casos usarías una instrucción switch en su lugar.

if (condition1) {
  // ...
} else if (condition2) {
  // ...
} else if (condition3) {
  // ...
} else if (condition4) {
  // ...
} else {
  // ...
}

Condición

Cuando construyas condiciones complejas, consulta la tabla de precedencia de operadores para evitar paréntesis innecesarios.

if (num >= 0 && num < 1) {
  // ...
}

// The inner brackets are obsolete because relational operators
// have higher precedence than logical operators.
<!-- prettier-ignore-start -->

if ((num >= 0) && (num < 1)) {
  // ...
}
<!-- prettier-ignore-end -->

Además, considera usar variables adicionales para que el código sea más legible.

const isPositive = num >= 0;
const isSmall = num < 1;
if (isPositive && isSmall) {
  // ...
}

En JavaScript, la condición no tiene por qué ser de tipo Boolean. Si en un contexto booleano como el condicional if se proporciona un valor de cualquier otro tipo distinto de Boolean, JavaScript convertirá implícitamente el valor a Boolean. Consulta el concepto de conversión de tipos para saber en detalle qué valores son truthy y cuáles falsy, respectivamente.

const num = 4;
if (num) {
  // this code block will be executed because 4 is truthy
}

Notaciones abreviadas

Si solo quieres ejecutar una instrucción en el bloque de código del if o del else, en JavaScript puedes omitir las llaves.

if (condition) doSomething();

// or

if (condition)
  doSomething();

A veces se usa, por ejemplo, para comprobar una condición de error. En general, no se recomienda, porque es fácil olvidarse de volver a añadir las llaves cuando se añade una segunda instrucción que debería depender de la misma condición.

Al escribir funciones, es habitual omitir el bloque else y usar un return anticipado en el bloque if. En muchos casos, esto reduce el anidamiento y hace que el código sea más legible y fácil de seguir.

function checkNumber(num) {
  let message = '';

  if (num === 0) {
    message = 'You passed 0, please provide another number.';
  } else {
    message = 'Thanks for passing such a nice number.';
  }

  return message;
}

// Can also be written as ...
function checkNumber(num) {
  if (num === 0) {
    return 'You passed 0, please provide another number.';
  }

  return 'Thanks for passing such a nice number.';
}
Editar en GitHub El enlace se abre en una nueva ventana o pestaña

Aprende Condicionales