ฟังก์ชัน isFinite() ตรวจสอบว่าค่าที่ให้มาคือ จำนวนจำกัด (finite number) หรือไม่ คืนค่า true หากเป็นจำนวนจำกัด, false หากเป็น Infinity, -Infinity, NaN หรือไม่ใช่ตัวเลข
ไวยากรณ์
isFinite(value)
ตัวอย่าง
<html> <head> <title>JavaScript Example</title> </head> <body> <script type="text/javascript"> var result1 = Math.min(); document.write(isFinite(result1)); document.write("<br>"); var result2 = Number.isFinite(100/0); document.write(result2); document.write("<br>"); var result3 = Math.max(25, 36, 862); document.write(isFinite(result3)); </script> </body> </html>
ผลลัพธ์
false false true
คำอธิบายผลลัพธ์:
Math.min()ไม่มี argument → Infinity →false100/0→ Infinity →falseMath.max(25, 36, 862)→ 862 (จำกัด) →true
ความแตกต่าง: isFinite() vs Number.isFinite()
| พฤติกรรม | isFinite() (global) | Number.isFinite() (ES6) |
|---|---|---|
| แปลงค่าก่อนตรวจสอบ | ใช่ | ไม่ |
| isFinite("10") | true | false |
| isFinite(null) | true (→ 0) | false |
| แนะนำใช้ | ไม่ | ใช่ (ES6+) |
ค่าที่คืน false:
- NaN
- Infinity, -Infinity
- ไม่ใช่ตัวเลข (global version จะแปลงก่อน)