Автор оригинала: FreeCodeCamp Community Member.
Этот учебник поможет вам узнать, как заменить Если/else Заявление с более лаконичным стенным синтаксисом под названием The Terary Operator.
Условный оператор – также известный как Тернарный оператор – это альтернативная форма Если/else Заявление, которое поможет вам написать условные блоки кода более лаконичным способом.
Синтаксис для условного оператора выглядит так:
conditional ? expression_when_true : expression_when_false;
Во-первых, вам нужно написать Условное выражение который оценивает в либо правда или ложь Отказ Если выражение возвращает true, JavaScript выполнит код, который вы пишете на левой стороне оператора толстой кишки ( : ), когда он возвращает false, код на правой стороне оператора толстой кишки выполняется.
Чтобы понять, как это работает, давайте сравним его с регулярным Если/else утверждение. Допустим, у вас есть небольшая программа, которая присваивает разные оценки экзамена в зависимости от вашей оценки экзамена:
- Когда у вас есть оценка выше 80, вы назначаете «A» в качестве оценки.
- Иначе вы назначаете «B» в качестве оценки.
Вот один из способов написать программу:
let score = 85;
let grade;
if(score >= 80){
grade = "A";
} else {
grade = "B";
}
console.log(`Your exam grade is ${grade}`);В качестве альтернативы вы можете написать вышеуказанный код, используя Ternary Operator следующим образом:
let score = 85;
let grade = score >= 80 ? "A" : "B";
console.log(`Your exam grade is ${grade}`);И там вы идете. Темнарный оператор скраденна выглядит более лаконичным и короче, чем обычный Если/else утверждение.
Но что, если ваш код требует нескольких Если/else заявления? Что, если вы добавите «C» и «D» оценки в оценку?
let score = 85;
let grade;
if(score >= 80){
grade = "A";
} else if (score >= 70) {
grade = "B";
} else if (score >= 60) {
grade = "C";
} else {
grade = "D";
}
console.log(`Your exam grade is ${grade}`);Не волнуйтесь! Вы можете написать несколько тройных операторов, чтобы заменить код выше этого:
let score = 85;
let grade = score >= 80 ? "A"
: score >= 70 ? "B"
: score >= 60 ? "C"
: "D";
console.log(`Your exam grade is ${grade}`);Тем не менее, не рекомендуется заменить несколько Если/else Заявления с несколькими тройными операторами, потому что это делает код сложнее читать в будущем. Лучше всего придерживаться либо Если/else или Переключатель заявления для таких случаев.
Спасибо за чтение этого учебника
Я надеюсь, что это помогло вам понять, как работает тройной оператор. Если вам нравится этот учебник, вы можете проверить мой сайт на Sebhastian.com Для большего количества JavaScript вкусностей.
Кроме того, у меня есть Бесплатная еженедельная рассылка О веб-разработке Учебные пособия (в основном связанные с JavaScript).