الأرقام في JavaScript
نوع واحد للأرقام يشمل الصحيحة والعشرية:
let int = 42;
let float = 3.14;
let negative = -7;
let exp = 5e3; // 5000
دوال الأرقام
let n = 3.14159;
n.toFixed(2) // "3.14" (تقريب لخانتين، يُرجع نصًا)
n.toString() // "3.14159"
parseInt("42px") // 42
parseFloat("3.14m") // 3.14
Number("123") // 123
(255).toString(16) // "ff" (نظام عددي آخر)
فحص الأرقام
isNaN("نص") // true (ليس رقمًا)
Number.isInteger(5) // true
Number.isFinite(5) // true
NaN (Not a Number) ينتج عن عملية رقمية فاشلة:
"abc" * 2 // NaN
كائن Math
دوال رياضية جاهزة:
Math.round(4.6) // 5 (تقريب لأقرب صحيح)
Math.floor(4.9) // 4 (لأسفل)
Math.ceil(4.1) // 5 (لأعلى)
Math.trunc(4.9) // 4 (حذف الكسر)
Math.abs(-7) // 7 (القيمة المطلقة)
Math.max(1, 9, 3) // 9
Math.min(1, 9, 3) // 1
Math.pow(2, 3) // 8 (الأس)
Math.sqrt(16) // 4 (الجذر)
Math.PI // 3.14159...
الأرقام العشوائية (Random)
Math.random() // عدد بين 0 و 1
Math.floor(Math.random() * 10) // عدد صحيح 0–9
Math.floor(Math.random() * 6) + 1 // نرد: 1–6
دالة لرقم عشوائي ضمن مدى:
function randomBetween(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
الأخطاء الشائعة
- ❌ توقّع دقّة عشرية مطلقة:
0.1 + 0.2ينتج0.30000000000000004(طبيعة الفاصلة العائمة). استخدمtoFixedعند العرض. - ❌ نسيان أن
toFixedيُرجع نصًا لا رقمًا. - ❌ استخدام
Math.roundللأرقام العشوائية بدلMath.floor→ توزيع غير متساوٍ.
خلاصة
نوع رقمي واحد في JS. استخدم toFixed للتقريب عند العرض، وكائن Math للعمليات (round, floor, max, sqrt, random)، وانتبه لدقّة الفاصلة العائمة.