Ternær operatør
Den ternære operatoren, også kjent som betingelsesoperatoren, er en kortfattet måte å skrive en if-else-setning på i en enkelt linje med kode. Den tar tre operander: en betingelse, en verdi som skal returneres hvis betingelsen er sann, og en verdi som skal returneres hvis betingelsen er falsk. Syntaksen til den ternære operatoren er som følger:
betingelse ? verdi_hvis_sann : verdi_hvis_falsk
Betingelsen evalueres først. Hvis den er sann, returneres uttrykket value_if_true. Hvis den er falsk, returneres uttrykket value_if_false. Den ternære operatoren brukes ofte som et mer kortfattet alternativ til en if-else-setning i situasjoner der betingelsen er enkel og den resulterende koden er lett å lese.
Se for eksempel på følgende if-else-setning:
if (x > 0) { y = x; } else { y = -x; }
Dette kan omskrives ved hjelp av den ternære operatoren som:
y = (x > 0) ? x : -x;
Den ternære operatoren kan også nestes for å håndtere mer komplekse forhold. For eksempel
resultat = (x > 0) ? "Positiv" : (x < 0) ? "Negativ" : "Null";
Denne koden sjekker om x er større enn 0. Hvis den er det, returneres verdien "Positiv". Hvis ikke, sjekker koden om x er mindre enn 0. Hvis den er det, returneres verdien "Negative". Hvis x verken er større eller mindre enn 0, returneres verdien "Zero".
Selv om den ternære operatoren i noen tilfeller kan gjøre koden mer kortfattet og lettere å lese, kan den også gjøre koden vanskeligere å forstå hvis den brukes i overkant mye eller på feil måte. Det er viktig å bruke den ternære operatoren med omtanke og å prioritere kodeklarhet og vedlikeholdbarhet fremfor kortfattethet.