<script>const log = console.log;</script>
<script>
var a;
log('----')
log((a)) // undefined
log((null)) // null
log((false)) // false
log((true)) // true
log('-- ! --')
log(!(a)) // true
log(!(null)) // true
log(!(false)) // true
log(!(true)) // false
log('-- !! --')
log(!!(a)) // false
log(!!(null)) // false
log(!!(false)) // false
log(!!(true)) // true
// 참고로 NaN은 IsNaN을 권장하고 있으나 !!로 동작하긴 한다.
log(parseInt("1") === 1); // true
log(isNaN(parseInt("a"))); // true
log(!!parseInt("1") === true); // true
log(!!parseInt("a") === false); // true
</script>
<html><meta charset="utf-8"></html>