Sprawdzanie zakresu liczby w JavaScript

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Sprawdzanie, czy liczba mieści się w określonym zakresie, wykonuje się najczęściej za pomocą instrukcji if, operatorów porównania oraz operatora logicznego &&.

Jeżeli warunek ma oznaczać, że liczba jest większa od 100 i jednocześnie mniejsza lub równa 200, zapisujemy:

if (liczba > 100 && liczba <= 200) {
  // liczba należy do zakresu (100, 200]
}

Znaczenie zapisu zakresu

Zakres (100, 200] oznacza:

  • 100 nie należy do zakresu, bo nawias okrągły oznacza granicę otwartą,
  • 200 należy do zakresu, bo nawias kwadratowy oznacza granicę domkniętą,
  • poprawny warunek to: liczba > 100 && liczba <= 200.

W niektórych zadaniach egzaminacyjnych można spotkać zapis 100,200>, który należy rozumieć jako przedział prawostronnie domknięty: od wartości większych niż 100 do wartości 200 włącznie.

Dlaczego używa się operatora &&?

Operator && oznacza logiczne i. Cały warunek jest prawdziwy tylko wtedy, gdy oba warunki są spełnione jednocześnie:

liczba > 100    // dolna granica
liczba <= 200   // górna granica

Użycie operatora || byłoby błędem, ponieważ oznacza logiczne lub i pozwalałoby na wartości spoza oczekiwanego zakresu.

Przykład

let liczba = 150;

if (liczba > 100 && liczba <= 200) {
  console.log("Liczba jest w zakresie");
} else {
  console.log("Liczba jest poza zakresem");
}

Dla wartości 150 warunek jest prawdziwy. Dla 100 jest fałszywy, a dla 200 prawdziwy.