Falsy

Ложное значение - это значение, которое считается ложным, когда встречается в контексте  Boolean .

 

JavaScript использует Type Conversion для приведения любого значения к логическому в контекстах, которые требуют его, такие как conditionals и loops.

 

В JavaScript есть только 6 ложных значений

Это означает, что когда JavaScript ожидает логическое значение и ему присваивается одно из значений ниже, он всегда будет оцениваться как «ложное»

false Ключевое слово false
0 Число ноль (zero).

BigInt, при использовании в качестве логического значения, следует тому же правилу, что и число. 0n -это ложь.

"", '', ``

Это пустая строка(длина строки ноль).

Strings in JavaScript can be defined with double quotes "", or single quotes '', as well as Template literals ``

null null  - отсутствие какого-либо значения
undefined undefined - примитивное значение
NaN NaN - не число

 

 

Примеры

Примеры ложных значений в JavaScript (которые приводятся к ложному в булевых контекстах и, таким образом, обходят блок if):

if (false)
if (null)
if (undefined)
if (0)
if (0n)
if (NaN)
if ('')
if ("")
if (``)
if (document.all)

 

Логический оператор И, &&

Если первый объект ложный, он возвращает этот объект

let pet = false && "dog";

// ↪ false

 

В прошлом для обнаружения браузером использовалсяdocument.all , а Спецификация HTML здесь определяет преднамеренное нарушение  стандарта ECMAScript для сохранения совместимости с устаревшим кодом. (if (document.all) { // Internet Explorer code here(except IE11) } or using document.all without checking its presence first: document.all.foo).

Иногда пишется  falsey, хотя на английском языке обычно превращают слово в прилагательное с окончанием -y, любое окончание e отбрасывается(noise => noisy, ice => icy, shine => shiny)

Узнать больше