JavaScript Порівняння
Оператори порівняння
Оператори порівняння використовуються для порівняння двох значень.
Оператори порівняння завжди повертають true або false.
Враховуючи, що x = 5, у таблиці нижче пояснюються оператори порівняння:
| Оператор | Опис | Порівняння | Поверне | |
|---|---|---|---|---|
| == | дорівнює | x == 8 | false | Спробуй це » |
| x == 5 | true | Спробуй це » | ||
| x == "5" | true | Спробуй це » | ||
| === | однакове значення та однаковий тип | x === 5 | true | Спробуй це » |
| x === "5" | false | Спробуй це » | ||
| != | не дорівнює | x != 8 | true | Спробуй це » |
| !== | не дорівнює значенню або не дорівнює типу | x !== 5 | false | Спробуй це » |
| x !== "5" | true | Спробуй це » | ||
| x !== 8 | true | Спробуй це » | ||
| > | більше ніж | x > 8 | false | Спробуй це » |
| < | менше ніж | x < 8 | true | Спробуй це » |
| >= | більше ніж або дорівнює | x >= 8 | false | Спробуй це » |
| <= | менше ніж або дорівнює | x <= 8 | true | Спробуй це » |
Оператори порівняння можна використовувати в умовних операторах для порівняння значень та виконання дій залежно від результату:
if (age < 18) text = "Занадто молодий, щоб купувати алкоголь";
Ви дізнаєтесь більше про використання умовних операторів у розділі if...else цього посібника.
JavaScript Порівняння рядків
Усі вищезгадані оператори порівняння також можна використовувати з рядками:
Зверніть увагу, що рядки порівнюються в алфавітному порядку:
Порівняння різних типів
Порівняння даних різних типів може дати неочікувані результати.
Під час порівняння рядка з числом JavaScript перетворить рядок на число. Порожній рядок перетвориться на 0. Нечисловий рядок перетвориться на NaN, яке завжди false.
| Випадок | Значення | Спробуй |
|---|---|---|
| 2 < 12 | true | Спробуй це » |
| 2 < "12" | true | Спробуй це » |
| 2 < "John" | false | Спробуй це » |
| 2 > "John" | false | Спробуй це » |
| 2 == "John" | false | Спробуй це » |
| "2" < "12" | false | Спробуй це » |
| "2" > "12" | true | Спробуй це » |
| "2" == "12" | false | Спробуй це » |
Під час порівняння двох рядків "2" буде більше, ніж "12".
В алфавітному порядку 1 менше ніж 21.
Щоб забезпечити правильний результат, змінні слід перетворити на правильний тип перед порівнянням:
Приклад
age = Number(age);
if (isNaN(age)) {
voteable = "Input is not a number";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
Спробуйте самі »
