Si no te gusta el operador condicional ternario, en primer lugar, no hay necesidad de responder;)ternario (condicional) del operador y de estilo
por lo general ven esto usa en conjunto con una expresión de asignación como:
var foo = (some_condition) ? then_code : else_code;
Sin embargo, me gustaría utilizarlo para reemplazar código simple como:
if(some_condition) {
do_something_simple;
} else {
do_something_else;
}
y en lugar de hacer:
(some_condition) ? do_something_simple : do_something_else;
Es probable que esté haciendo esto en JavaScript. En lo anterior, devuelve indefinido, por lo que no requiere la asignación. Me gusta el espacio ahorrado, pero me pregunto qué piensa la gente sobre este tipo de uso, ya que, de nuevo, suelo ver solo ternario con una tarea.
EDIT: He visto respuestas que aluden a "intento de ocultamiento". Aunque se usa clásicamente en expresiones, ¿cómo es que esto oculta la intención más que usar en una expresión? ¿Especialmente en un lenguaje dinámico donde uno puede ver el uso de operadores ternarios en todo el lugar?
Pregunta duplicada. Por favor siempre mire las preguntas previamente hechas y respondidas por Frist. Aquí está el enlace, vea si ayuda: http://stackoverflow.com/questions/3622244/full-if-else-statement-vs-conditional-operator –
Consejo: Tenga en cuenta que este operador ternario en particular se suele llamar el operador condicional. Un operador "ternario" es solo un operador con 3 operandos, de ahí la palabra "ternario". No hay muchos operadores ternarios, pero en idiomas que tienen múltiples, el condicional es solo uno de ellos. –
@Mazhar: esa pregunta se trata de usar '?:' De la manera normal y aceptada como una opción de nivel de expresión. Se trata del abuso de '?:' Para llevar a cabo efectos secundarios activos, para reemplazar 'if-else'. Personalmente, odio tanto esta práctica. – bobince