Hemos hablado sobre el operador ternario ?: en Java o como emularlo en Python. Pero ¿Existe en el viejo VBScript? Pues no. ¿Qué soluciones tenemos?
Realmente cuando trabajamos en ASP Clásico el VBScript nos permite hacer un if-else en una sola línea tal que así:
If diaDeLaSemana < 6 Then seTrabaja = True Else seTrabaja = false
Por otra parte podríamos crear una función que emule su funcionamiento. Recibiría como parámetros una expresión que nos devuelva un valor booleano, una cadena que devolver en caso de que la expresión sea cierta y otra para el caso de que sea falsa:
Function IfT(bExpr, rVerdadera, rFalsa)
If CBool(bExpr) Then
IfT = rVerdadera
Else
IfT = rFalsa
End If
End Function
Veamos un ejemplo:
HoyQueHago = IfT(diaDeLaSemana < 6, "Currar", "Descansar")
Si el día de la semana es menor que seis (es decir, de lunes a viernes) devolvería «Currar» y si es mayor o igual (sábado o domingo) devolvería «Descansar«.