کار با داده های تصادفی در جاوااسکریپت
سلام خدمت تمامی دوستان و همراهان محترم سایت آموزشی فری لرن ، امیدوارم که حال همگیتون خوب باشه. لطفا در ادامه با آموزش کار با داده های تصادفی در جاوااسکریپت با من همراه باشید.
Free-Learn
آنچه در این جلسه میخوانید :
داده های تصادفی در جاوااسکریپت
در زبان جاوااسکریپت ما میتونیم با استفاده تابع ()Math.random یک عدد تصادفی بین ۰ و ۱ ایجاد و یا تولید کنیم، و باید توجه داشته باشید که این عدد تصادفی تولید شده همواره بین ۰ و ۱ هست، یعنی اینجوریم میتونیم بگیم که عدد تولید شده همواره کوچکتر از ۱ هست.
مثال شماره ۱ : تولید عدد کوچکتر از ۱ با استفاده از تابع ()Math.random
لطفا بروی دکمه امتحان کنید کلیک نمایید و در صفحه مثال چندین بار بروی دکمه اجرای کدها کلیک نمایید یاهم میتونید صفحه رو چندین رفرش کنید تا ببینید که یک عدد بصورت تصادفی تولید میشود
1 2 3 4 5 6 |
<script> var a = Math.random(); document.write(a); </script> |
Free-Learn
تولید عدد تصادفی صحیح یا Integer
خب همونطور که در مثال بالا مشاهده کردید تابع ()Math.random فقط میتونه عدد تصادفی کوچکتر از ۱ رو تولید کنه ولی خب شاید ما بخوایم یک عدد بزرگتری مثلا ( بین ۱۰ تا ۱۰۰۰ ) تولید کنیم، اونوقت باید چکار کرد!؟
خیلی راحت با ترکیب ()Math.floor با ()Math.random میتونیم اعداد تصادفی صحیح به دلخواه خودمون مشخص کنیم، مثلا بگیم یک عدد صحیح تصادفی بین ۰ تا ۱۰,۰۰۰ یا هرچیز دیگه.
مثال شماره ۱ : تولید عدد تصادفی صحیح بین ۰ تا ۱۰,۰۰۰
1 2 3 4 5 6 |
<script> var a = Math.floor(Math.random() * 10000); document.write(a); </script> |
مثال شماره ۲ : تولید عدد تصادفی صحیح بین ۱ تا ۱۰
1 2 3 4 5 6 |
<script> var a = Math.floor(Math.random() * 10) + 1; document.write(a); </script> |
مثال شماره ۳ : تولید عدد تصادفی با کلیک بروی یک دکمه
1 2 3 4 5 |
function MyRandom(){ var result = document.getElementById("Result"); var a = Math.floor(Math.random() * 10000000000); result.innerHTML = a; } |
Free-Learn
تولید رشته یا متن تصادفی
حالا میخوایم ببینیم چجوری میشه رشته یا متن یا String بصورت تصادفی تولید کنیم، یعنی بجای اینکه عدد تصادفی تولید بشه میخوایم متن تصادفی تولید کنیم.
مثال شماره ۱ : تولید متن تصادفی با استفاده از کاراکترهایی که ما بهش میدیم ( مثلا ABCabd123 ) و همچنین در خروجی میتونیم به دلخواه خودمون طول کاراکترهای متن تصادفی تولید شده رو مشخص کنیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<body> <button onclick="MyText(20);">کلیک کنید</button> <h2 id="Result"></h2> <script> function MyText(length) { var result = ''; var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; var charactersLength = characters.length; for ( var i = 0; i < length; i++ ){ result = result + characters.charAt(Math.floor(Math.random() * charactersLength)); } document.getElementById("Result").innerHTML = result; } </script> </body> |
مثال شماره ۲ : تولید متن تصادفی از داخل یک آرایه
1 2 3 4 5 6 7 8 9 10 |
<script> function MyRandom(){ var Daneshjoo = ["Sadegh", "Ali", "Maryam", "Elnaz" , "Reza" , "Mohsen"]; var RandomString = Math.floor(Math.random() * Daneshjoo.length); var result = document.getElementById("Result"); result.innerHTML = Daneshjoo[RandomString]; } </script> |
Free-Learn
مثال های بیشتر
مثال شماره ۱ : دریافت ۱ عدد از کاربر و تولید عدد تصادفی از بین عدد ۱ تا عددی که کاربر مشخص کرده
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<script> function MyRandom(){ var UserNumber = document.getElementById("Num1").value; var result = document.getElementById("Result"); if(UserNumber == ""){ alert("لطفا یه عدد وارد کن"); } else{ var a = Math.floor(Math.random() * UserNumber) + 1; result.innerHTML = a; } } </script> |