🧮 إتقان الرياضيات في JavaScript: دليلك الشامل لكائن Math

مرحباً بك في درس Math! في البرمجة، غالباً ما نحتاج إلى إجراء عمليات رياضية تتجاوز الجمع والطرح البسيطين. لحسن الحظ، توفر JavaScript كائناً مدمجاً اسمه Math يجعل التعامل مع الرياضيات أمراً في غاية السهولة. في هذا الدرس، سنتعرف على هذا الكائن الرائع ونتعلم كيفية استخدامه خطوة بخطوة.


ما هو كائن Math؟ 🤔

كائن Math هو كائن مدمج (Built-in Object) في JavaScript يحتوي على خصائص ووظائف (دوال) رياضية مفيدة جاهزة للاستخدام. الميزة الكبرى هي أنك لا تحتاج إلى إنشاء هذا الكائن بنفسك، فهو متاح مباشرة في أي مكان في الكود.

فكر فيه كأداة متكاملة تحتوي على كل ما تحتاجه للقيام بحسابات معقدة بمجرد كتابة Math. متبوعة باسم الدالة أو الخاصية التي تريدها.

// Math جاهز للاستخدام مباشرة!
console.log(Math); // سيعرض محتويات كائن

🔢 الثوابت الرياضية في Math

يحتوي كائن Math على بعض القيم الثابتة الشهيرة في الرياضيات والتي نستخدمها كثيراً. هذه القيم مخزنة كـ خصائص (Properties) للكائن.

أهم هذه الثوابت:

  • Math.PI: قيمة باي (π) التقريبية (حوالي 3.14159).
  • Math.E: قاعدة اللوغاريتم الطبيعي (e) (حوالي 2.718).
// مثال على استخدام الثوابت
let circleRadius = 5;

// لحساب محيط الدائرة: 2 * π * نصف القطر
let circumference = 2 * Math.PI * circleRadius;
console.log("The circumference of the circle is: " + circumference); // Output: The circumference of the circle is: 31.41592653589793

// لحساب مساحة الدائرة: π * نصف القطر تربيع
let area = Math.PI * circleRadius * circleRadius;
console.log("The area of the circle is: " + area); // Output: The area of the circle is: 78.53981633974483

✨ أهم دوال Math الشائعة (الوظائف)

هذه هي الوظائف التي ستستخدمها بشكل متكرر. ننادي عليها باستخدام Math.اسم_الدالة().

1. التقريب (Rounding)

  • Math.round(x) : تقريب العدد x إلى أقرب عدد صحيح.
  • Math.floor(x) : تقريب العدد x لأسفل إلى أقرب عدد صحيح (إزالة الكسور).
  • Math.ceil(x) : تقريب العدد x لأعلى إلى أقرب عدد صحيح.
let number = 4.7;

console.log(Math.round(number)); // 5 (لأن 4.7 أقرب إلى 5)
console.log(Math.floor(number)); // 4 (إزالة للكسور نحو الأسفل)
console.log(Math.ceil(number));  // 5 (تقريب للأعلى)

let anotherNumber = 4.2;
console.log(Math.round(anotherNumber)); // 4 (لأن 4.2 أقرب إلى 4)

2. الجذر التربيعي والأسس

  • Math.sqrt(x) : إرجاع الجذر التربيعي للعدد x.
  • Math.pow(base, exponent) : رفع العدد base إلى الأس exponent.
// الجذر التربيعي لـ 25
console.log(Math.sqrt(25)); // 5

// 2 أس 3 (2 * 2 * 2)
console.log(Math.pow(2, 3)); // 8

// يمكننا أيضاً استخدام المعامل ** الحديث (مشابه لـ pow)
console.log(2 ** 3); // 8

3. القيمة المطلقة

  • Math.abs(x) : إرجاع القيمة المطلقة (القيمة الموجبة) للعدد x.
console.log(Math.abs(-10)); // 10
console.log(Math.abs(10));  // 10
console.log(Math.abs(-3.14)); // 3.14

4. توليد أرقام عشوائية

  • Math.random() : هذه الدالة مهمة جداً! تُرجع عدداً عشوائياً بين 0 (مشمول) و 1 (غير مشمول). أي أن الناتج يكون 0 <= x < 1.
// إنشاء رقم عشوائي بين 0 و 1
let randomNum = Math.random();
console.log(randomNum); // output مثال: 0.549876123445

// لإنشاء رقم عشوائي بين 0 و 9 (أعداد صحيحة)
let randomInteger = Math.floor(Math.random() * 10);
console.log(randomInteger); // output مثال: 7

// لإنشاء رقم عشوائي بين 1 و 10
let randomBetween1And10 = Math.floor(Math.random() * 10) + 1;
console.log(randomBetween1And10); // output مثال: 4

ملاحظة: Math.random() وحدة لا تكفي لإنشاء أرقام في نطاق محدد، لذا ندمجها مع Math.floor() كما في المثال.

5. إيجاد القيم القصوى والدنيا

  • Math.max(x1, x2, ...) : إرجاع أكبر عدد من بين الأعداد الممررة لها.
  • Math.min(x1, x2, ...) : إرجاع أصغر عدد من بين الأعداد الممررة لها.
console.log(Math.max(10, 30, 5, 20)); // 30
console.log(Math.min(10, 30, 5, 20)); // 5

خلاصة الدرس 🎯

أصبح كائن Math صديقك الجديد في عالم JavaScript! لقد تعلمت اليوم كيفية استخدام الثوابت الرياضية مثل PI، ودوال أساسية للتقريب والعمليات الحسابية (round, sqrt, pow)، وكيفية توليد أرقام عشوائية باستخدام random(). تذكر أن هذه الدوال جاهزة للاستخدام مباشرة دون أي إعداد مسبق.