คำตอบสั้น
Boolean(-Infinity) คืนค่า true
เหตุผล
ใน JavaScript ค่าที่เป็น Falsy (คืนค่า false เมื่อแปลงเป็น Boolean) มีเพียง 6 ค่าเท่านั้น:
false0(และ-0,0n)""(สตริงว่าง)nullundefinedNaN
Infinity และ -Infinity ไม่อยู่ในรายการนี้ จึงเป็นค่า Truthy ทั้งคู่ และแปลงเป็น true เสมอ
ตัวอย่างโค้ด
<!DOCTYPE html>
<html>
<body>
<p>แปลง -Infinity เป็น Boolean</p>
<script>
var myVal = -Infinity;
document.write("Boolean(-Infinity): " + Boolean(myVal)); // true
document.write("<br>Boolean(Infinity): " + Boolean(Infinity)); // true
document.write("<br>Boolean(0): " + Boolean(0)); // false
document.write("<br>Boolean(NaN): " + Boolean(NaN)); // false
</script>
</body>
</html>
ตารางสรุปค่า Number ที่เป็น Truthy/Falsy
| ค่า | Boolean |
|---|---|
-Infinity | true |
Infinity | true |
-1 | true |
0 | false |
1 | true |
NaN | false |