La estructura if ternaria
En JavaScript, el operador ternario es una forma abreviada de escribir una estructura if...else. Se utiliza cuando deseas evaluar una condición y devolver un valor u otro en función de si la condición es verdadera o falsa. Es llamado "ternario" porque involucra tres partes: la condición, la expresión para el caso true y la expresión para el caso false.
1. Sintaxis del Operador Ternario #
La sintaxis básica del operador ternario es:
1condición ? expresión_si_true : expresión_si_false;
condición: Es la expresión que se evalúa. Si estrue, se ejecutaexpresión_si_true; si esfalse, se ejecutaexpresión_si_false.?: Separa la condición de la expresión que se ejecuta si la condición es verdadera.:: Separa la expresión para el casotruede la expresión para el casofalse.
Ejemplo básico #
Supongamos que queremos asignar un mensaje basado en la edad de una persona:
1let edad = 20; 2let mensaje = edad >= 18 ? "Eres mayor de edad" : "Eres menor de edad"; 3 4console.log(mensaje); // Muestra "Eres mayor de edad"Salida de consola Eres mayor de edad
En este ejemplo:
- La condición
edad >= 18se evalúa comotrue. - Como la condición es
true, se ejecuta la primera expresión"Eres mayor de edad"y se asigna a la variablemensaje. - Si la condición hubiera sido
false, se habría ejecutado la segunda expresión"Eres menor de edad".
Comparación con if...else #
El operador ternario es equivalente a una estructura if...else, pero es más compacto. Aquí está el mismo ejemplo usando if...else:
1let edad = 20; 2let mensaje; 3 4if (edad >= 18) { 5 mensaje = "Eres mayor de edad"; 6} else { 7 mensaje = "Eres menor de edad"; 8} 9 10console.log(mensaje); // Muestra "Eres mayor de edad"Salida de consola Eres mayor de edad
Como puedes ver, el operador ternario reduce la cantidad de código, haciéndolo ideal para expresiones simples.
Ejemplo de uso en una función #
El operador ternario también se puede usar directamente en funciones para devolver valores basados en una condición.
1function obtenerEstado(edad) { 2 return edad >= 18 ? "Adulto" : "Menor"; 3} 4 5console.log(obtenerEstado(20)); // Muestra "Adulto" 6console.log(obtenerEstado(15)); // Muestra "Menor"Salida de consola Adulto Menor
Resumen del tema
Conceptos clave #
- Operador Ternario (
condicion ? exp1 : exp2): único operador de JavaScript que toma tres operandos; evalúa la condición y devuelve el resultado de una de las dos expresiones. - Expresión vs Sentencia: el ternario es una expresión (produce un valor que puede asignarse o retornarse directamente), a diferencia de
if...elseque es una sentencia. - Buenas Prácticas: utilizarlo para asignaciones y retornos directos y concisos; evitar anidar múltiples ternarios (
a ? b : c ? d : e) para no perjudicar la legibilidad.
Qué debes recordar #
Usa el operador ternario para simplificar asignaciones y retornos condicionales simples de una sola línea en lugar de bloques if...else verbosos.