Какой смысл несет в себе конструкция !! в js?
Получение логического эквивалента выражения. Оператор логического отрицания применяется дважды, например:

!!187 -> !false -> true
!!NaN -> !true -> false

Тот же результат даст Boolean(выражение).
Ещё называют двойным отрицанием. Когда ты используешь !, ты приводишь выражение к противоположному текущему в логическом эквиваленте. Потом ты отрицаешь полученное выражение.
!0 // true
!!0 // false
На самом деле удобно, но стоит использовать осторожно. Не нужно забывать про разницу между == и ===. Правила схожи.