JavaScript: логические операторы
- AND оператор: & &
- OR оператор: ||
- NOT оператор: !
Логические операторы обычно используются с логическими (логическими) значениями. Когда они есть, они возвращают логическое значение. Однако & & и || операторы фактически возвращают значение одного из указанных операндов, поэтому, если эти операторы используются с небулевыми значениями, они могут возвращать небулево значение: как указано в разделе 12.12: Значение, выраженное символом & & || оператор не обязательно имеет тип Boolean. Выводимое значение всегда будет значением одного из двух выражений операнда.
AND оператор: & &
Логический оператор AND (& &) возвращает true, если выражение для обеих сторон оператора равно true.
OR оператор: ||
Логический оператор OR возвращает false, если выражение для обеих сторон оператора оценивается как false.
NOT оператор: !
Если выражение принимает значение true, результат логического оператора NOT (!) Является ложным. Если выражение принимает значение false, результат будет истинным.
Источник: http://net-informations.com/js/iq/logical.htm