تولید اعداد تصادفی در جاوااسکریپت

javascript random numbers guide
20 آبان 1403

یادگیری تولید اعداد تصادفی در جاوااسکریپت می‌تواند برای شما در پروژه‌های مختلف و کاربردی بسیار مفید باشد. برای مثال، ممکن است نیاز داشته باشید که یک عدد تصادفی برای یک بازی یا قرعه‌کشی تولید کنید. جاوااسکریپت با کمک توابعی ساده، می‌تواند این کار را به‌آسانی انجام دهد.

در جاوااسکریپت، تابع Math.random() کاربردهای بسیاری دارد و می‌تواند اعداد تصادفی بین ۰ و ۱ تولید کند. توجه داشته باشید که این عدد شامل ۱ نمی‌شود. از این تابع می‌توانید برای تولید اعداد تصادفی در هر دامنه‌ای که می‌خواهید استفاده کنید.

ممکن است از خود بپرسید که چگونه می‌توان از این عبارت ساده برای تولید اعدادی در محدوده بزرگ‌تر، مثلا بین ۱ تا ۱۰۰، استفاده کرد. این فرآیند شامل چند محاسبه‌ی ساده است که ما در این مقاله توضیح خواهیم داد.

در ادامه کدی خواهیم نوشت که در آن، یک عدد تصادفی بین دو عدد مشخص تولید می‌شود و همچنین یاد خواهیم گرفت که چگونه این عدد را تا حداقل و حداکثر مورد نظر تنظیم کنیم.

همچنین، اگر بخواهید اعداد صحیح و نه اعشاری تولید کنید،‌ جاوااسکریپت قابلیت‌هایی برای این کار نیز دارد. استفاده از این روش می‌تواند در برنامه‌ریزی پروژه‌هایی که نیاز به محاسبات تصادفی دارند، مانند بازی‌سازی یا آزمون‌سازی، استفاده شود.

در نتیجه، یادگیری کار با اعداد تصادفی و نحوه تولید آن‌ها می‌تواند به پروژه‌های شما پویایی بیشتری ببخشد و به شما اجازه دهد که تجربه‌های کاربری متنوع‌تری برای کاربران خود فراهم کنید.

مثال تولید عدد تصادفی در جاوااسکریپت

<script>
// تولید عدد تصادفی بین ۰ و ۱۰۰
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
}

console.log(getRandomInt(1, 100));
</script>

توضیح کد بالا

<script>: تگ اسکریپت که به جاوااسکریپت اجازه اجرا می‌دهد
function getRandomInt(min, max): تعریف تابع برای تولید عدد تصادفی
min = Math.ceil(min): گرد کردن حداقل به بالا تا نزدیک‌ترین عدد صحیح
max = Math.floor(max): گرد کردن حداکثر به پایین تا نزدیک‌ترین عدد صحیح
return Math.floor(Math.random() * (max - min + 1)) + min: محاسبه و بازگرداندن عدد صحیح تصادفی
console.log(getRandomInt(1, 100)): نمایش عدد تصادفی تولید شده در کنسول
</script>: پایان تگ اسکریپت

سوالات متداول

؟

چگونه با جاوااسکریپت اعداد تصادفی تولید کنیم؟

؟

آیا می‌توانیم اعداد صحیح تصادفی تولید کنیم؟

؟

تفاوت بین Math.ceil و Math.floor چیست؟