Falsy

Хибне (falsy) значення - це значення, яке вважається таким, що дорівнює false, у контексті Boolean.

Мова JavaScript використовує перетворення типів, щоб перетворити будь-яке значення на Boolean у контексті, який цього вимагає, наприклад, умови та цикли.

Є 8 хибних значень:

false Ключове слово false
0 Число нуль.
-0 Від'ємне число нуль
0n BigInt, при використанні у якості boolean, дотримується тих самих правил, що й Number. 0n є хибним.
""

Порожній текстовий рядок (довжина рядка дорівнює нулю).

Рядки у JavaScript можуть бути визначені через подвійні лапки "", одинарні лапки '', або Шаблонні літерали ``

null null - відсутність будь-якого значення об'єкта
undefined undefined - просте значення
NaN NaN - не число (not a number)

Об'єкти є хибними лише тоді, коли мають внутрішній слот [[IsHTMLDDA]]. Цей слот існує лише у document.all та не може бути встановлений засобами JavaScript.

Приклади

Приклади хибних значень у JavaScript (які приводяться до false у контексті Boolean і, таким чином, пропускають блок if):

if (false)
if (null)
if (undefined)
if (0)
if (-0)
if (0n)
if (NaN)
if ("")

Логічний оператор І, &&

Якщо перший об'єкт є хибним, повертає цей об'єкт

false && "dog"
// ↪ false

0 && "dog"
// ↪ 0

Специфікації

Специфікація
ECMAScript (ECMA-262)
The definition of 'ToBoolean abstract operation' in that specification.

Дізнатись більше