Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

วิธีทดสอบว่าค่าเท่ากับ NaN ใน JavaScript ยังไง?

พรอพเพอร์ตี้ NaN ทั่วไปใน JavaScript เป็นค่าที่แทน Not-A-Number (ไม่ใช่ตัวเลข) มันคือค่าที่คืนกลับมาเมื่อ

  • ฟังก์ชันคณิตศาสตร์ล้มเหลว (เช่น Math.sqrt(-500))
  • ฟังก์ชันที่พยายามแปลงข้อความเป็นตัวเลขล้มเหลว (เช่น parseFloat("test"))

NaN ไม่เท่ากับค่าใดๆ (ผ่าน ==, !=, ===, และ !==) รวมถึง NaN อีกตัวหนึ่งด้วย

เพื่อทดสอบว่าค่าเป็น NaN เราต้องใช้เมธอด Number.isNaN

ตัวอย่าง

let a = Math.sqrt(-500); console.log(Number.isNaN(a))

ผลลัพธ์

true

หมายเหตุ - isNaN() และ Number.isNaN(): ตัวแรกจะคืน true หากค่าเป็น NaN อยู่แล้ว หรือจะกลายเป็น NaN หลังจากถูกบังคับแปลงเป็นตัวเลข ส่วนตัวหลังจะคืน true ก็ต่อเมื่อค่าเป็น NaN อยู่แล้วเท่านั้น

ตัวอย่าง

isNaN('hello world'); Number.isNaN('hello world');

ผลลัพธ์

true false