Истинноподобное значение

В JavaScript истинноподобное (truthy) значение — это значение, рассматривающиеся как true в булевом контексте. К истинноподобным значениям относятся любые ("Falsy", "неложноподобные")}} значения (т.е. false, 0, -0, 0n, "", null, undefined и NaN).

В булевых контекстах JavaScript использует механизм приведения типов.

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

if (true)
if ({})
if ([])
if (42)
if ("0")
if ("false")
if (new Date())
if (-42)
if (12n)
if (3.14)
if (-3.14)
if (Infinity)
if (-Infinity)

Оператор логического И, &&

Если первый операнд истинноподобен, то оператор логического И вернёт второй операнд:

true && "dog"
// возвращает "dog"

[] && "dog"
// возвращает "dog"

Смотрите также