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:
100nie należy do zakresu, bo nawias okrągły oznacza granicę otwartą,200należ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.