Последние учебники веб-разработки
×

JS Руководство

JS ГЛАВНАЯ JS Введение JS Куда JS Вывод JS Синтаксис JS Заявления JS Комментарии JS переменные JS операторы JS арифметика JS присваивание JS Типы данных JS функции JS Объекты JS Объем JS Мероприятия JS Строки JS Методы струнных JS чисел JS Методы Number JS математический JS Даты JS Форматы даты JS Методы Дата JS Массивы JS Методы массивов JS Booleans JS Сравнения JS условия JS переключатель JS петля For JS В то время как Loop JS Ломать JS Тип преобразования JS RegExp JS ошибки JS отладка JS Подъемно JS Строгий режим JS Гид по стилю JS Лучшие практики JS Ошибки JS Представление JS Зарезервированные слова JS JSON

JS формы

Формы проверки Формы API

JS объект

Определения объектов Свойства объекта Методы объекта Прототипы объектов

JS функции

Определения функций Функциональные параметры Функция Призвание Функция Затворы

JS HTML DOM

DOM вступление DOM методы DOM Документ DOM элементы DOM HTML DOM CSS DOM Анимации DOM Мероприятия DOM EventListener DOM навигация DOM Вершины DOM Nodelist

JS браузер BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS Примеры

JS Примеры JS HTML DOM JS HTML вход JS HTML Объекты JS HTML Мероприятия JS браузер JS викторина JS Резюме

JS Рекомендации

JavaScript Объекты HTML DOM Объекты


 

JavaScript Сравнение и логические операторы


Сравнение и логические операторы используются для проверки true или false .


Операторы сравнения

Операторы сравнения используются в логических операторов для определения равенства или разности между переменными или значениями.

Учитывая , что x = 5 , в приведенной ниже таблице описываются операторы сравнения:

оператор Описание Сравнивая Возвращает Попробуй
== равно x == 8false Попробуй "
x == 5true Попробуй "
x == "5"true Попробуй "
=== равной ценности и равный тип x === 5true Попробуй "
x === "5"false Попробуй "
!= не равный x != 8true Попробуй "
!== не равное значение или не равно тип x !== 5false Попробуй "
x !== "5"true Попробуй "
x !== 8true Попробуй "
> больше чем x > 8false Попробуй "
< меньше, чем x < 8true Попробуй "
>= больше или равно x >= 8false Попробуй "
<= меньше или равно x <= 8true Попробуй "

Как это может быть использовано

Операторы сравнения могут быть использованы в условных операторов для сравнения значений и принимать меры в зависимости от результата:

if (age < 18) text = "Too young";

Вы узнаете больше об использовании условных операторов в следующей главе данного руководства.


Логические операторы

Логические операторы используются для определения логики между переменными или значениями.

Учитывая , что x = 6 и y = 3 , в приведенной ниже таблице описываются логические операторы:

оператор Описание пример Попробуй
&&and (x < 10 && y > 1) is true Попробуй "
||or(x == 5 || y == 5) is false Попробуй "
!not !(x == y) is true Попробуй "

Условный (троичный) оператор

JavaScript также содержит условный оператор, который присваивает значение переменной на основании некоторого условия.

Синтаксис

variablename = ( condition ) ? value1 : value2  

пример

var voteable = (age < 18) ? "Too young":"Old enough";
Попробуй сам "

Если переменная возраст является значение ниже 18, то значение переменной voteable будет "слишком молодых", в противном случае значение voteable будет "достаточно Старый".


Сравнение различных типов

Сравнение данных различных типов может привести к неожиданным результатам.

При сравнении строки с числом, JavaScript преобразует строку в число при выполнении сравнения. Пустая строка превращается в 0. нечисловая строка преобразуется в NaN , которое всегда ложно.

случай Стоимость Пытаться
2 < 12true Попробуй "
2 < "12"true Попробуй "
2 < "John"false Попробуй "
2 > "John"false Попробуй "
2 == "John"false Попробуй "
"2" < "12"false Попробуй "
"2" > "12"true Попробуй "
"2" == "12"false Попробуй "

При сравнении двух строк, "2" будет больше, чем "12", так как (в алфавитном порядке) 1 меньше, чем 2.

Для обеспечения должного результата, переменные должны быть преобразованы в соответствующий тип перед сравнением:

age = Number(age);
if (isNaN(age)) {
    voteable = "Error in input";
} else {
    voteable = (age < 18) ? "Too young" : "Old enough";
}
Попробуй сам "

JavaScript Побитовые Операторы

Bit операторы работают на 32-разрядных чисел.

Любой числовой операнд в операции преобразуется в 32-битовое число.

Результат преобразуется обратно в число JavaScript.

оператор Описание пример Такой же как результат Десятичная дробь
& AND x = 5 & 1 0101 & 0001 0001 1
| OR x = 5 | 1 0101 | 0001 0101 5
~ NOT x = ~ 5  ~0101 1010 10
^ XOR x = 5 ^ 1 0101 ^ 0001 0100 4
<< Left shift x = 5 << 1 0101 << 1 1010 10
>> Right shift x = 5 >> 1 0101 >> 1 0010 2

В приведенной выше таблице использования 4 бита без знака примеры. Но JavaScript использует 32-разрядные числа подписанных.
Из-за этого, в JavaScript, ~ 5 не вернется 10. Он вернется -6:
~ 00000000000000000000000000000101 вернется 11111111111111111111111111111010

пример

x = 5 & 1;

Результат по х:

1
Попробуй сам "

пример

x = 5 | 1;

Результат по х:

5
Попробуй сам "

пример

x = 5 >> 1;

Результат по х:

2
Попробуй сам "

пример

x = 5 << 1;

Результат по х:

10
Попробуй сам "

пример

x = ~ 5;

Результат по х:

-6
Попробуй сам "

Проверьте себя с упражнениями!

Упражнение 1 » Упражнение 2» Упражнение 3 » Упражнение 4» Упражнение 5 » Упражнение 6»