Instrukcja warunkowa if, spójniki logiczne

Mirosław Zelent | 08-01-2018

Instrukcja warunkowa to po prostu rozgałęzienie w działaniu programu (ang. if = “jeżeli”). W zależności od tego, czy warunek zawarty w instrukcji jest prawdziwy lub fałszywy, wykonane zostają inne instrukcje. Klauzula else jest opcjonalna, to znaczy nie musi koniecznie wystąpić – zależy to od nas i rozpatrywanego problemu. Składnia w tzw. pseudokodzie:

 if (warunek_logiczny)
{
  // instrukcje jeśli warunek_logiczny prawdziwy
}
else
{
  // instrukcje jeśli warunek_logiczny fałszywy
}

Rozważmy przykład bankomatu. Aby móc dokonać transakcji, użytkownik musi podać poprawny numer PIN. Sprawdzenia poprawności możemy dokonać instrukcją warunkową – załóżmy, że poprawny numer PIN to 1945:

 if (pin == 1945)
{
  alert("Poprawny nr PIN");
}
else
{
  alert("Niepoprawny nr PIN!");
}

Zwróć uwagę na operator porównania ==, będący podwójnym znakiem równości (w odróżnieniu od operatora przypisania wartości, który jest pojedynczy: =. Warunki mogą być złożone, zaś łącznikami są operatory: &&, ||

Używamy także negacji (zaprzeczenia), którą zapisujemy operatorem wykrzyknika: !

Spójniki logiczne

Zobaczmy teraz, jak działają oba spójniki logiczne:

Spójnik logiczny OR (“lub”) – operator: || wystarczy spełnienie co najmniej jednego warunku składowego, aby warunek złożony okazał się prawdziwy. Przykład: sprawdzenie, czy przynajmniej jedno z pól edycyjnych jest puste (nie zostało uzupełnione tekstem):

 var a = document.getElementById("a").value;
var b = document.getElementById("b").value;

if (a == "" || b == "")
{
  alert("Proszę uzupełnić obie liczby!");
}

Spójnik logiczny AND (“i”) – operator: && konieczne jest spełnienie co wszystkich warunków składowych, aby warunek złożony okazał się prawdziwy. Przykład: mechanizm logowania (zarówno login jak i hasło muszą się zgadzać):

 if (login == "admin" && haslo == "admin123")
{
  alert("Poprawne logowanie");
}

Negacja NOT („nie”) – operator: ! zgodnie ze swoją nazwą, zawsze zmienia wartość logiczną na przeciwną (prawda zmienia się na fałsz, zaś fałsz na prawdę). Przykład: zanegowanie wykrzyknikiem warunku (liczba >= 0) sprawia, że spełni się on w sytuacji odwrotnej (zaprzeczonej), czyli kiedy liczba będzie ujemna:

 var liczba = document.getElementById("pole").value;

if (!(liczba >= 0))
{
  alert("To jest na pewno liczba ujemna!");
}
else
{
  alert("To jest na pewno liczba większa lub równa zero!");
}