V tomto kurzu se na příkladech dozvíte o podmíněném / ternárním operátoru v JavaScriptu.
K nahrazení if… else
příkazu v určitých situacích lze použít ternární operátor . Než se dozvíte o ternárních operátorech, nezapomeňte zkontrolovat výukový program JavaScriptu, pokud … else.
Co je ternární operátor?
Ternární operátor vyhodnotí podmínku a na základě podmínky provede blok kódu.
Jeho syntaxe je:
stav? výraz1: výraz2
Ternární operátor vyhodnotí stav testu.
- Je-li podmínka splněna
true
, provede se výraz1 . - Je-li podmínka splněna
false
, provede se výraz2 .
Ternární operátor má tři operandy, proto název ternární operátor. Je také známý jako podmíněný operátor.
Napišme program, který na základě získaných známek určí, zda student složil nebo neuspěl ve zkoušce.
Příklad: JavaScript Ternary Operator
// 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.`);
Výstup 1
Zadejte své známky: 78 Složili jste zkoušku.
Předpokládejme, že uživatel zadá 78 . Poté marks>= 40
se zkontroluje stav, který se vyhodnotí jako true
. První výraz pass
je tedy přiřazen výsledné proměnné.
Výstup 2
Zadejte své známky: 35 Zkoušku jste neuspěli.
Předpokládejme, že použití zadá 35 . Poté se stav marks>= 40
vyhodnotí jako false
. Druhý výraz fail
je tedy přiřazen výsledné proměnné.
Používá se ternární operátor Místo, pokud… jinak
V JavaScriptu lze k nahrazení určitých typů if… else
příkazů použít ternární operátor . Například,
Tento kód můžete nahradit
// 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);
s
// 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);
Výstup obou programů bude stejný.
Výstup
Zatím nemáte právo hlasovat.
Vnořené ternární operátory
Můžete také vnořit jeden ternární operátor jako výraz do jiného ternárního operátoru. Například,
// 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).`);
Výstup
Počet je kladný.
Poznámka : Měli byste se snažit vyhnout vnořeným ternárním operátorům, kdykoli je to možné, protože váš kód ztěžují čtení.