Operator trójargumentowy JavaScript (z przykładami)

W tym samouczku dowiesz się o operatorze warunkowym / trójskładnikowym w JavaScript z pomocą przykładów.

Operator trójargumentowy może służyć do zastępowania if… elseinstrukcji w określonych sytuacjach. Zanim nauczysz się operatorów trójskładnikowych, koniecznie zapoznaj się z samouczkiem JavaScript if… else.

Co to jest operator trójskładnikowy?

Operator trójskładnikowy ocenia warunek i wykonuje blok kodu na podstawie warunku.

Jego składnia to:

stan: schorzenie ? wyrażenie1: wyrażenie2

Operator trójskładnikowy ocenia warunek testu.

  • Jeśli warunkiem jest true, wykonywane jest wyrażenie1 .
  • Jeśli warunkiem jest false, wykonywane jest wyrażenie2 .

Operator trójskładnikowy przyjmuje trzy operandy, stąd nazwa operator trójskładnikowy. Jest również znany jako operator warunkowy.

Napiszmy program, który na podstawie uzyskanych ocen określi, czy student zdał egzamin, czy nie.

Przykład: operator trójargumentowy JavaScript

 // 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.`);

Wyjście 1

 Wpisz swoje oceny: 78 Zdajesz egzamin.

Załóżmy, że użytkownik wprowadzi 78 . Następnie marks>= 40sprawdzany jest warunek, którego wynikiem jest true. Zatem pierwsze wyrażenie passjest przypisane do zmiennej wynikowej.

Wyjście 2

 Wpisz swoje oceny: 35 Nie zdałeś egzaminu.

Załóżmy, że użycie wejdzie w 35 . Następnie warunek przyjmuje marks>= 40wartość false. Zatem drugie wyrażenie failjest przypisane do zmiennej wynikowej.

Używany operator trójskładnikowy Zamiast if… else

W JavaScript do zastąpienia niektórych typów if… elseinstrukcji można użyć operatora trójskładnikowego . Na przykład,

Możesz zastąpić ten kod

 // 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);

z

 // 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);

Dane wyjściowe obu programów będą takie same.

Wynik

 Nie masz jeszcze uprawnień do głosowania.

Zagnieżdżone operatory trójskładnikowe

Możesz również zagnieździć jeden operator trójskładnikowy jako wyrażenie wewnątrz innego operatora trójskładnikowego. Na przykład,

 // 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).`);

Wynik

 Liczba jest dodatnia.

Uwaga : w miarę możliwości należy unikać zagnieżdżonych operatorów trójskładnikowych, ponieważ utrudniają one odczytanie kodu.

Interesujące artykuły...