Оператор !
Оператор ! називається логічним запереченням (NOT).
Він інвертує (перевертає) логічне значення виразу.
Правило:
javascript
!true → false
!false → trueЯкщо значення істинне (truthy) - воно стане
false. Якщо хибне (falsy) - воно станеtrue.
Приклади використання !
javascript
!true // false
!false // true
!0 // true (0 - хибне значення)
!1 // false (1 - істинне)
!"" // true (порожній рядок - хибне значення)
!"hello" // false (непорожній рядок - істинне значення)
!undefined // true
!null // true
!NaN // true
![] // false (масив - truthy)
!{} // false (об'єкт - truthy)Подвійне заперечення !!
Дуже часто в JavaScript зустрічається подвійний оператор:
javascript
!!valueВін використовується для приведення будь-якого значення до типу boolean.
Приклад:
javascript
!!'hello' // true
!!'' // false
!!0 // false
!!123 // true
!!null // false
!!{} // true
!![] // true
!!- це короткий і зрозумілий спосіб явно сказати: «Перетвори значення на булеве».
У логічних виразах
! часто використовується для перевірки умов:
javascript
const isLoggedIn = false;
if (!isLoggedIn) {
console.log('Користувач не авторизований');
}Тут
!isLoggedIn→!false→true, тобто блокifвиконається.
Як це працює всередині
- JS спочатку приводить значення до логічного типу (
true/false); - потім інвертує його.
Приклад:
javascript
!'text' // крок 1: 'text' → true; крок 2: !true → falseПорівняння з іншими логічними операторами
| Оператор | Назва | Приклад | Результат |
|---|---|---|---|
! | Логічне НЕ | !true | false |
&& | Логічне І | true && false | false |
|| | Логічне АБО | true || false | true |
Підсумок
| Ситуація | Що робить ! | Приклад |
|---|---|---|
| Заперечує логічне значення | !true → false | |
Приводить значення до boolean | !!'js' → true | |
| Використовується в умовах | if (!user) → «якщо user не задано» |
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.