Ingernirated
@Ingernirated
Романыч

Что означает эта запись с двумя !!?

Случайно наткнулся на такую запись, но ни разу не видел восклицательные знаки в этом месте, что это значит?
document.body!!.appendChild(canvas)
  • Вопрос задан
  • 858 просмотров
Решения вопроса 2
@KnightForce
Отрицание приводит любой тип к логическому / boolean и возвращает обратное.
0, "", null, undefined - false.
Числа, строки (кроме пустой), массивы, объекты, функции - true.
!true == false //!tue равно false
!0 == true
/*
0 становится конвертируется в логический тип - false, потом возвращается противоположное значение true
*/

Двойное отрицание используется, чтобы привести к логическому типу.
например, в зависимости от строки тебе нужно в переменную присвоить true или false.
function f(str) {
    return !!str;
}

f("") // вернет false
f("1") //вернет true
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы