freeCodeCamp/guide/arabic/javascript/random-method/index.md

4.9 KiB

title localeTitle
Random Method طريقة عشوائية

طريقة عشوائية

طريقة JavaScript Math.random() هي طريقة مدمجة ممتازة لإنتاج أرقام عشوائية. عند تنفيذ Math.random() ، تقوم بإرجاع رقم عشوائي يمكن أن يكون بين 0 و 1. يتم تضمين 0 و 1 مستثنى.

توليد رقم نقطة عائم عشوائي بين 0 و 1

سيقوم الأسلوب Math.random() بإرجاع رقم عشري (عشري) أكبر من أو يساوي 0 وأقل من (ولكن لا يساوي مطلقًا) 1. وبعبارة أخرى 0 <= x < 1 . فمثلا:

`console.log(Math.random()); // 0.7069207248635578

console.log(Math.random()); // 0.765046694794209

console.log(Math.random()); // 0.14069121642698246 `

(وبالطبع ، ستكون الأرقام التي يتم إرجاعها مختلفة في كل مرة. سيتم افتراض ذلك لكافة الأمثلة التالية - ستحدث نتائج مختلفة لكل تمريرة.)

للحصول على رقم عشوائي بين مجموعة أكبر Math.random() نتيجة Math.random() برقم.

توليد رقم نقطة عائمة عشوائية بين 0 و max محدد

عادة لا تحتاج إلى أرقام عشوائية بين 0 و 1 - تحتاج إلى أعداد أكبر أو حتى أعداد صحيحة.

على سبيل المثال ، إذا كنت تريد رقم نقطة عائم عشوائيًا بين 0 و 10 ، فيمكنك استخدام:

`var x = Math.random()*10;

console.log(x); // 4.133793901445541 `

توليد رقم نقطة عائمة عشوائية داخل نطاق

إذا كنت تحتاج إلى رقم نقطة عائمة عشوائي يتراوح بين رقمين محددين ، فيمكنك فعل شيء كالتالي:

`var min = 83.1; var max = 193.36;

var x = Math.random()*(max - min)+min;

console.log(x); // 126.94014012699063 `

توليد عدد صحيح عشوائي بين 0 و max

غالبا ما تحتاج إلى الأعداد الصحيحة. للقيام بذلك ، سيتعين عليك استخدام بعض الطرق الأخرى من كائن Math ، Math.floor() (تقريبًا إلى أقرب عدد صحيح) و Math.ceil() (تقريبًا إلى أقرب عدد صحيح).

على سبيل المثال ، إذا كنت تريد التحديد عشوائياً من مصفوفة من 10 عناصر ، فستحتاج إلى رقم عشوائي بين 0 و 9 ضمناً (تذكر أن المصفوفات صفر فهرستها).

`var x = Math.floor(Math.random()*10);

console.log(x); // 7 `

(تذكر أن Math.random() لن ترجع بالضبط 1 ، لذلك لن يتمكن Math.random()*10 العودة تمامًا 10. وهذا يعني أنه بعد التقريب إلى الأسفل ، ستكون النتيجة دائمًا 9 أو أقل.)

توليد عدد صحيح عشوائي بين 1 و max

إذا كنت بحاجة إلى رقم عشوائي مع الحد الأدنى لعدد 1 (على سبيل المثال ، اختيار يوم عشوائي في يناير) ، يمكنك استخدام أسلوب Math.ceil() .

`var x = Math.ceil(Math.random()*31);

console.log(x); // 23 `

طريقة أخرى كانت لاستخدام الوظيفة السابقة (باستخدام Math.floor() ) وإضافة 1 إليها:

`var x = Math.floor(Math.random()*31)+1;

console.log(x); // 17 `

توليد عدد صحيح عشوائي داخل نطاق

وأخيرًا ، تحتاج في بعض الأحيان إلى عدد صحيح عشوائي بين رقمين محددين. على سبيل المثال ، إذا كنت تحاول اختيار تذاكر يانصيب وكنت تعرف أرقام أقل وأكبر رقم:

`var min = 1718; var max = 3429;

var x = Math.floor(Math.random()*(max-min+1)+min);

console.log(x); //2509 `

ما مدى عشوائية Math.random ()؟

يمكن الإشارة إلى أن الرقم الذي تم إرجاعه بواسطة Math.random() هو رقم زائف عشوائي حيث لا يمكن لأي كمبيوتر إنشاء رقم عشوائي حقيقي ، والذي يعرض عشوائيًا على جميع المقاييس وعلى جميع أحجام مجموعات البيانات. ومع ذلك ، فإن الرقم الزائف العشوائي الذي تولده Math.random() يكفي عادة لاحتياجات أي برنامج تقريبًا قد تكتبه. لا تظهر العشوائية الحقيقية فقط في مجموعات الأرقام الكبيرة الفلكية أو عندما تكون هناك حاجة إلى الكسور العشرية غير المألوفة.

معلومات اكثر:

  • الوثائق: MDN