العودة إلى الدورة

قيم الأرقام الخاصة: NaN و Infinity

JavaScript: الدورة الكاملة للمبتدئين من 'الصفر إلى الاحتراف'

13. قيم الأرقام الخاصة: NaN و Infinity

تحتوي JavaScript على قيم خاصة مضمنة في نوع Number لتمثيل المستحيلات الرياضية أو الحدود القصوى.

1. Infinity و -Infinity

تمثل قيمة أكبر من أكبر رقم ممكن أو أقل من أصغر رقم ممكن.

javascript console.log(1 / 0); // Output: Infinity console.log(-1 / 0); // Output: -Infinity console.log(2 ** 1024); // Output: Infinity (Overflow)

2. NaN (Not a Number)

NaN هي نتيجة عملية رياضية لا يمكن أن تنتج رقمًا صالحًا.

javascript console.log('hello' / 2); // Output: NaN (You can't divide text) console.log(Math.sqrt(-1)); // Output: NaN (Cannot take square root of a negative number)

فحص حاسم: لا يمكنك اختبار NaN باستخدام المساواة الصارمة (===).

javascript console.log(NaN === NaN); // Output: false (NaN is the only value that is not equal to itself!)

// Use this function instead: (استخدم هذه الدالة بدلاً من ذلك:) console.log(Number.isNaN('test' / 2)); // true