En este tutorial, aprenderá sobre el operador condicional / ternario en JavaScript con la ayuda de ejemplos.
Se puede utilizar un operador ternario para reemplazar una if… else
declaración en determinadas situaciones. Antes de aprender acerca de los operadores ternarios, asegúrese de consultar el tutorial de JavaScript if… else.
¿Qué es un operador ternario?
Un operador ternario evalúa una condición y ejecuta un bloque de código según la condición.
Su sintaxis es:
condición? expresión1: expresión2
El operador ternario evalúa la condición de prueba.
- Si la condición es
true
, se ejecuta expression1 . - Si la condición es
false
, se ejecuta expression2 .
El operador ternario toma tres operandos, de ahí el nombre operador ternario. También se conoce como operador condicional.
Escribamos un programa para determinar si un estudiante aprobó o reprobó el examen en función de las calificaciones obtenidas.
Ejemplo: operador ternario de JavaScript
// program to check pass or fail let marks = prompt('Enter your marks :'); // check the condition let result = (marks>= 40) ? 'pass' : 'fail'; console.log(`You $(result) the exam.`);
Salida 1
Introduzca sus notas: 78 Aprueba el examen.
Suponga que el usuario ingresa 78 . Luego marks>= 40
se verifica la condición a la que se evalúa true
. Entonces, la primera expresión pass
se asigna a la variable de resultado.
Salida 2
Introduzca sus notas: 35 Reprueba el examen.
Suponga que el uso entra en 35 . Entonces la condición se marks>= 40
evalúa como false
. Entonces, la segunda expresión fail
se asigna a la variable de resultado.
Operador ternario utilizado en lugar de if … else
En JavaScript, se puede usar un operador ternario para reemplazar ciertos tipos de if… else
declaraciones. Por ejemplo,
Puedes reemplazar este código
// check the age to determine the eligibility to vote let age = 15; let result; if (age>= 18) ( result = "You are eligible to vote."; ) else ( result = "You are not eligible to vote yet."; ) console.log(result);
con
// ternary operator to check the eligibility to vote let age = 15; let result = (age>= 18) ? "You are eligible to vote." : "You are not eligible to vote yet"; console.log(result);
La salida de ambos programas será la misma.
Salida
Aún no eres elegible para votar.
Operadores ternarios anidados
También puede anidar un operador ternario como una expresión dentro de otro operador ternario. Por ejemplo,
// program to check if number is positive, negative or zero let a = 3; let result = (a>= 0) ? (a == 0 ? "zero" : "positive") : "negative"; console.log(`The number is $(result).`);
Salida
El número es positivo.
Nota : debe intentar evitar los operadores ternarios anidados siempre que sea posible, ya que hacen que su código sea difícil de leer.