Сравнение JavaScript
- Предыдущая страница JS логика
- Следующая страница JS условие
Сравнение и логические операторы используются для тестирования истина
Или ложно
.
Сравнительные операторы
Сравнительные операторы используются в логических операторах для определения того, равны ли переменные или значения.
Давайте дадим x = 5, в следующей таблице объясняется сравнительный оператор:
Оператор | Описание | Сравнение | Возврат | Тест |
---|---|---|---|---|
== | Равен | x == 8 | ложно | Попробуйте |
x == 5 | истина | Попробуйте | ||
x == "5" | истина | Попробуйте | ||
=== | Ценность равна и тип равен | x === 5 | истина | Попробуйте |
x === "5" | ложно | Попробуйте | ||
!= | Не равно | x != 8 | истина | Попробуйте |
!== | Ценность не равна или тип не равен | x !== 5 | ложно | Попробуйте |
x !== "5" | истина | Попробуйте | ||
x !== 8 | истина | Попробуйте | ||
> | > | Больше | ложно | Попробуйте |
< | Меньше | x < 8 | истина | Попробуйте |
>= | Больше или равно | x >= 8 | ложно | Попробуйте |
<= | Меньше или равно | x <= 8 | истина | Попробуйте |
Как использовать
Сравнительные операторы могут использоваться в условных операторах для сравнения значений и выполнения действий в зависимости от результатов:
if (age < 18) text = "слишком молодой";
В следующих главах этого руководства вы узнаете больше о условных операторах.
Логические операторы
Логические операторы используются для определения логики между переменными или значениями.
Давайте дадим x = 6 и y = 3, в следующей таблице объясняется логический оператор:
Оператор | Описание | Пример | Тест |
---|---|---|---|
&& | И | (x < 10 && y > 1) возвращает true | Попробуйте |
|| | Или | (x == 5 || y == 5) возвращает false | Попробуйте |
! | Не | !(x == y) возвращает true | Попробуйте |
Условный (трехзначный) оператор
JavaScript также включает условные операторы, которые могут присваивать значения переменным на основе某些 условий.
Синтаксис
variablename = (condition) ? value1:value2
Пример
var voteable = (age < 18) ? "слишком молодой":"достаточно зрелый";
Если значение переменной age меньше 18, значение переменной voteable будет "слишком молодой", в противном случае значение переменной voteable будет "достаточно зрелый".
Сравнение различных типов
Сравнение данных разных типов может привести к неожиданным результатам.
Если сравнивать строку с числом, то JavaScript будет преобразовывать строку в числовое значение. Пустая строка будет преобразована в 0. Ненумерационная строка будет преобразована в значение, которое всегда будет ложно
of NaN
.
Кейс | Значение | Тест |
---|---|---|
2 < 12 | истина | Попробуйте |
2 < "12" | истина | Попробуйте |
2 < "Bill" | ложно | Попробуйте |
2 > "Bill" | ложно | Попробуйте |
2 == "Bill" | ложно | Попробуйте |
"2" < "12" | ложно | Попробуйте |
"2" > "12" | истина | Попробуйте |
"2" == "12" | ложно | Попробуйте |
Когда сравниваются два строки, "2" больше "12", потому что (по алфавитному порядку) 1 меньше 2.
Чтобы обеспечить правильный результат, перед сравнением переменной её следует преобразовать в подходящий тип:
age = Number(age); if (isNaN(age)) { voteable = "ошибка ввода"; } voteable = (age < 18) ? "слишком молод" : "достаточно взрослый"; }
- Предыдущая страница JS логика
- Следующая страница JS условие