🧮 طرق التعامل مع الأرقام في جافا سكريبت: أدواتك السحرية! ✨
مرحباً بك في عالم جافا سكريبت! 🚀 بعد أن تعلمنا كيفية تخزين الأرقام في المتغيرات، حان الوقت لنكتشف الأدوات المدمجة التي تتيح لنا التعامل مع هذه الأرقام بذكاء. هذه الأدوات تسمى "Number Methods" أو "طرق التعامل مع الأرقام". تخيل أن الرقم هو قطعة طين، وهذه الطرق هي أدوات النحت التي تشكلها بالطريقة التي تريدها! 🎨
ما هي طرق التعامل مع الأرقام (Number Methods)؟ 🤔
ببساطة، "الطرق" (Methods) هي وظائف أو إجراءات جاهزة مرتبطة بنوع معين من البيانات. بما أننا نتحدث عن الأرقام، فهذه الطرق مخصصة للتعامل مع قيم من نوع Number. طريقة استخدامها سهلة: نكتب الرقم (أو اسم المتغير الذي يحتويه)، ثم نضع نقطة .، ثم اسم الطريقة متبوعاً بأقواس ().
الصيغة العامة:
variableName.methodName()
دعنا نستكشف أهم هذه الطرق خطوة بخطوة. 👇
1. تحويل الرقم إلى نص: .toString() 📝
هذه الطريقة تحول أي رقم إلى قيمة نصية (String). لماذا قد نحتاج هذا؟ ربما لأننا نريد دمج الرقم مع جملة نصية لعرضها للمستخدم.
مثال عملي:
let myAge = 25;
let ageAsText = myAge.toString(); // تحويل الرقم 25 إلى النص "25"
console.log(ageAsText); // المخرجات: "25"
console.log(typeof ageAsText); // المخرجات: string (للتأكد من النوع)
// مثال للدمج مع نص
let message = "My age is: " + myAge.toString();
console.log(message); // المخرجات: "My age is: 25"
2. تحديد المنازل العشرية: .toFixed() 🔢
تستخدم هذه الطريقة عندما تريد تحديد عدد الأرقام بعد الفاصلة العشرية. هي مفيدة جداً في العمليات الحسابية المالية أو عند عرض نتائج تحتاج دقة محدودة.
كيف تعمل؟ تأخذ الطريقة رقماً واحداً كمدخل، يمثل عدد الخانات العشرية المطلوبة.
مثال عملي:
let productPrice = 19.9567;
let roundedPrice = productPrice.toFixed(2); // تقريب السعر إلى منزلتين عشريتين
console.log(roundedPrice); // المخرجات: "19.96" (لاحظ أنها أصبحت نصاً!)
let simplePi = 3.14159.toFixed(3);
console.log(simplePi); // المخرجات: "3.142" (تقريب إلى 3 منازل عشرية)
ملاحظة مهمة: النتيجة التي ترجعها .toFixed() هي من نوع نص (String)، وليس رقم!
3. تحديد طول الرقم كاملاً: .toPrecision() 📏
تشبه .toFixed() لكن مع فرق رئيسي: هي تحدد العدد الإجمالي للأرقام (الكل) في الرقم، بما في ذلك الأرقام قبل وبعد الفاصلة العشرية.
مثال عملي:
let longNumber = 123.456789;
console.log(longNumber.toPrecision(5)); // المخرجات: "123.46" (5 أرقام إجمالاً)
console.log(longNumber.toPrecision(3)); // المخرجات: "123" (3 أرقام إجمالاً)
console.log(longNumber.toPrecision(8)); // المخرجات: "123.45679" (8 أرقام إجمالاً)
تذكر: النتيجة هنا أيضاً تكون من نوع نص (String).
4. تحويل النص إلى عدد صحيح: parseInt() 🔄
هذه طريقة خاصة! لاحظ أنها لا تُستدعى من خلال رقم ونقطة، بل تُستدعى مباشرةً. وظيفتها هي قراءة نص وتحويله إلى عدد صحيح (Integer). إذا واجهت رقماً عشرياً، ستتجاهل الجزء العشري.
مثال عملي:
let text1 = "50";
let text2 = "60.75 سنة";
let text3 = "السعر 99";
let number1 = parseInt(text1); // تحويل النص "50" إلى الرقم 50
console.log(number1); // المخرجات: 50
let number2 = parseInt(text2); // تأخذ "60" وتتجاهل ".75 سنة"
console.log(number2); // المخرجات: 60
let number3 = parseInt(text3); // تبدأ من أول حرف غير رقمي، فترجع NaN
console.log(number3); // المخرجات: NaN
5. تحويل النص إلى عدد عشري: parseFloat() 🌊
تعمل تماماً مثل parseInt()، لكنها تحافظ على الجزء العشري من الرقم إذا وجد.
مثال عملي:
let textA = "9.81";
let textB = "سرعة 88.5 كم/س";
let floatA = parseFloat(textA);
console.log(floatA); // المخرجات: 9.81
let floatB = parseFloat(textB); // تأخذ "88.5" وتتوقف عند المسافة
console.log(floatB); // المخرجات: 88.5
6. التحقق من القيم الخاصة: isNaN() و Number.isFinite() 🔍
هذه الطرق تساعدنا في فحص صحة وقابلية استخدام الأرقام.
isNaN(): تختبر إذا كانت القيمة "ليست رقماً" (Not a Number). ترجعtrueإذا كانت كذلك.console.log(isNaN("Hello")); // المخرجات: true console.log(isNaN(123)); // المخرجات: false (إنه رقم) console.log(isNaN("123")); // المخرجات: false (يمكن تحويله لرقم)Number.isFinite(): تختبر إذا كانت القيمة رقماً عادياً ومحدوداً (ليس ما لا نهايةInfinity).console.log(Number.isFinite(100)); // المخرجات: true console.log(Number.isFinite(Infinity)); // المخرجات: false console.log(Number.isFinite("100")); // المخرجات: false (إنه نص وليس رقم)
7. التحقق من العدد الصحيح: Number.isInteger() ✅
طريقة بسيطة ومباشرة تتحقق إذا كان الرقم عدداً صحيحاً (بدون فاصلة عشرية) أم لا.
مثال عملي:
console.log(Number.isInteger(10)); // المخرجات: true
console.log(Number.isInteger(10.5)); // المخرجات: false
console.log(Number.isInteger("10")); // المخرجات: false (إنه نص)
🎯 خلاصة الدرس
تعلمنا اليوم مجموعة من الأدوات القوية (Number Methods) التي تمنحنا السيطرة على الأرقام في جافا سكريبت:
.toString()لتحويل الرقم إلى نص..toFixed(n)لتحديدnمنزلة عشرية..toPrecision(n)لتحديدnرقم إجمالي.parseInt()وparseFloat()لتحويل النصوص إلى أرقام.isNaN()وNumber.isFinite()وNumber.isInteger()للتحقق من خصائص الأرقام.
تذكر أن الممارسة هي مفتاح الإتقان! جرب هذه الأمثلة بنفسك في وحدة التحكم بالمتصفح (Console). 💻
🎓 اختبر نفسك
التعليقات
شاركنا رأيك أو أسئلتك حول هذا المقال