Сравнение двух переменных в JavaScript может быть тем, что каждый разработчик делал в своей повседневной работе, но есть классный и быстрый способ, которым вы можете произвести впечатление на своего коллегу, выполняя преобразование переменной в логическое значение.

Обратный логический

Мы все видим использование обратной логической логики (!) во всей нашей кодовой базе. В JavaScript этот символ преобразует каждый тип в логический, а затем меняет логику своей работы.

Что произойдет, если вы используете «!!»?

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

Некоторые примеры, когда мы используем только один «!» логическое выражение:

!'' // true
!{} // false
!0 // true
!1 // false
![] // false
!undefined // true
!null // true

Как вы можете видеть в приведенном выше коде, логические значения были преобразованы в логические значения, а затем заменены условными вычислениями.

Итак, вот что происходит, когда мы используем два «!» логические выражения:

!!'' // false
!!{} // true
!!0 // false
!!1 // true
!![] // true
!!undefined // false
!!null // false

Вы можете видеть, что значения были преобразованы в логическое значение, но не изменили его условное выражение, поэтому мы успешно преобразовали значение в логическое значение и сохранили его логику.

Спасибо за прочтение и до встречи в других статьях.