Да, это НЕ-НЕ.Обычно используется идиома для преобразования значения в логическое значение эквивалентной истинности.
JavaScript понимает 0.0
, ''
, null
, undefined
и false
как ложное значение и любое другое значение(в том числе, очевидно, true
) как правдивый.Эта идиома преобразует все первые в логическое значение false
, а все последние в логическое значение true
.
В данном конкретном случае
a && b
вернет b
, еслиa
и b
верны;
!!(a && b)
вернет true
, если оба a
и b
верны.