Sammantaget bör du endast använda ternära satser när den resulterande satsen är kort. Skriv annars ett norm alt if-uttalande. Syftet med en ternär operator är att göra din kod mer kortfattad och läsbar. Att flytta en komplex if-sats till en ternär operator går emot det målet.
Är det bra att använda ternär operator?
Ternära operatörer är inte dåliga. Men många väljer att inte använda dem eftersom de kan vara svåra att analysera vid första anblicken. Uttrycksförmågan som du får av att använda if/else-villkor är densamma som en ternär - för det mesta - men det möjliggör bättre läsbarhet.
Är ternära operatörer dålig praxis?
Den villkorliga ternära operatorn kan definitivt överanvändas, och vissa tycker att den är ganska oläslig. Jag tycker dock att det kan vara väldigt rent i de flesta situationer att ett booleskt uttryck förväntas, förutsatt att dess avsikt är tydlig.
Är ternärt bättre än om?
Ternary är snabbare sedan if/else så länge ingen ytterligare beräkning krävs för att konvertera logiken till oss ternär. När det är en helt enkelt ternär operation har den också bättre läsbarhet. Om endast satsen är snabbare än if/else, så om logiken inte kräver en else-sats, använd den.
Är ternärt mer effektivt än om annars?
Den ternära operatören bör inte skilja sig i prestanda från en välskriven motsvarighet om / annat uttalande… de kan mycket väl lösastill samma representation i det abstrakta syntaxträdet, genomgå samma optimeringar etc.