Есть! 0 и! 1 что-то большее, чем стенография истинного/ложного?

Прочитав код, я наткнулся на использование !0 и !1. Я понимаю, что это более короткие способы написания true и false.

!0 === true
!1 === false

Это, конечно, сохранить несколько байтов, но есть ли другая причина использовать его?

Есть ли имя для этого способа записи?

Ответ 1

Большинство инструментов оптимизации UglifyJS, сгенерируйте этот код, потому что он короче и семантически эквивалентен. Например, данный:

var x = true;
if (x) { 
  alert(x); 
}

UglifyJS будет генерировать var x=!0;x&&alert(x).

Обычно вам не нужно писать код, используя этот стиль; пусть minifiers выполняют свою работу: -).