Логические (булевые) переменные и операторы логики #
Таблица истинности #
a | b | a && b | a || b | ! a |
---|---|---|---|---|
false | false | false | false | true |
false | true | false | true | true |
true | false | false | true | false |
true | true | true | true | false |
Давайте представим себе пример из жизни: мы ищем на сайте все статьи, которые мы опубликовали и комментировали. Должны быть два совпадения — это вариант a && b. Или мы ищем все статьи, в которых есть упоминание слов “алгебра” или “математика” — это a || b. А отыскать все статьи, которые написаны не нами, можно, применив логический оператор !a. Стать исключительно космонавтом, но не медиком — это a && !b
Это так называемые булевы или логические операции. В интернете много материала по ключевым словам: таблица истинности, булева алгебра, теория множеств, конъюнкция, дизъюнкция.
С помощью таблицы с результатами логических операций можно перепроверить работу JS:
Логические операторы, которые поддерживаются JS #
Логический операторы | Значение |
---|---|
== | Проверка с приведением к общему типу на соответствие (допустим, что a равен b) |
=== | Проверка на соответствие (допустим, что a равен b) |
= | ПРИСВОИТЬ (a присвоим 7) |
!= | Не равно (если a не равно b, то) |
! | Отрицание, логическое не |
&& | Логическое И, and |
|| | Логическое или, or |
Дизъюнкция #
Когда мама ИЛИ папа дают мне деньги на карманные расходы, то я бегу и покупаю себе мороженное.
Знакомая ситуация, деньги можно получить в трёх случах из четырёх. В одном случае же деньги может дать и мама, и папа, тогда и друга можно угостить мороженным.
Это дизъюнкция.
Дизъюнкция - логическое сложение, логическое ИЛИ, включающее или, просто “или”(англ. OR; нем. ODER) В JS оператор "||"
let a = false, b = true, c;
c = a || b;
Пример в технике; дублирование выключателя или кнопки, дверной звонок и звонок у калитки вызывают одну и туже реакцию - включается мелодия звонка.
В учебниках можно встретить обозначение “больше либо равно единице” - =>1.
Конъюнкция #
Конъюнкция - логическое “И”, логическое умножение, просто “И”, “AND”, "&".
В JS оператор "&&".
let a = false, b = true, c;
c = a && b;
Если светит солнце “И” у меня выходной, то я иду купаться на озеро.
Пример из жизни. Ядерный чемоданчик могут активировать только два офицера одновременно. По отдельности чемодан остаётся неактивным.
Амперсанд — это название знака &.
Пайп (pipeline), Вертикальная черта — это название знака |.
=== - equals.
Мы ещё раз рассмотрим данные операторы позже. Пока мы должны понимать, что с арифметическими операторами всё немного сложнее, чем хотелось бы.