Nombor Rawak dalam JavaScript
Nombor rawak mempunyai pelbagai kegunaan, dari keseronokan kepada praktikal. Kebanyakan permainan melibatkan beberapa bentuk rawak dalam bentuk perkara seperti kad dadu atau shuffled. Jika anda ingin memaparkan petikan secara rawak apabila seseorang melawat halaman anda, anda memerlukan sumber rawak. Nombor rawak bukan semua keseronokan dan permainan, nombor rawak digunakan dalam kriptografi, untuk pensampelan secara rawak, untuk pemodelan, dan untuk meletakkan sesuatu secara rawak (seperti calon pada undi.) Beberapa kegunaan ini tidak menggunakan nombor secara langsung , tetapi anda boleh menukar dari nombor rawak ke perkara rawak dengan meletakkan perkara yang anda ingin pilih dalam baris dan secara rawak memetik satu baris. Dalam pengaturcaraan, tatasusunan berfungsi dengan baik untuk ini. Nombor rawak tidak selalu benar-benar rawak. Jika anda melancarkan satu set dadu adil, anda akan mendapat nombor rawak, namun kaedah yang digunakan oleh komputer untuk memilih nombor rawak adalah nombor pseudo-rawak, yang bermaksud bahawa ia kelihatan rawak di permukaan tetapi ia sebenarnya boleh diramal atau mengulangi siri. Untuk beberapa perkara, ini bukan perbezaan penting. Jika anda memaparkan sebut harga rawak atau jenaka setiap kali seseorang memuatkan halaman web anda, mungkin tidak penting seseorang boleh meramalkan apabila suatu petikan tertentu akan muncul dan anda boleh menggunakan nombor pseudo-rawak dengan selamat (untuk perkara itu, anda mungkin boleh hanya tunjukkan petikan anda mengikut perintah yang anda buat untuk menulisnya.) Jika anda cuba melakukan ujian dadah secara rawak untuk atlet Tour de France, adalah penting bahawa atlet tidak boleh meramalkan kapan atau sama ada mereka akan diuji.

Objek JavaScript Math termasuk kaedah yang menyediakan nombor pseudo-rawak. Tidak seperti banyak bahasa pengaturcaraan lain, JavaScript tidak membenarkan anda membiayai penjana nombor dengan sumber rawak anda sendiri. Pelaksanaan yang berlainan berbeza dengan seberapa dekat dengan rawak yang benar-benar angka yang disediakan, tetapi secara umum, mereka harus cukup baik untuk digunakan untuk kegunaan keseronokan atau artistik tetapi jika anda memerlukan nombor rawak untuk tujuan yang dikawal selia atau keselamatan, anda harus mencari sumber yang lebih baik rawak. The math.random () kaedah mengembalikan nombor rawak yang sama ada 0 atau antara 0 dan 1. Sesetengah versi penyemak imbas Opera mempunyai patuh standard math.random () kaedah yang akan sangat jarang dikembalikan 1. Anda perlu mengendalikan hasil yang tidak dijangka ini - saran paling mudah yang saya lihat adalah menggunakan pengendali modulo dengan satu terhadap nilai yang dikembalikan oleh math.random (), ini akan mengembalikan nilai asal jika nombor rawak berada dalam julat yang ditetapkan dan 0 jika anda memperolehi 1. Juga, saya mendapati bahawa saya tidak memerlukan perpuluhan rawak kurang daripada satu, tetapi sebilangan integer rawak. Untuk mendapatkan integer rawak, anda mengalikan nilai dari math.random () dengan bilangan nombor rawak berpotensi yang anda mahu (X) dan mencari integer sebelumnya atau seterusnya. Objek matematik menyediakan kaedah lantai dan siling yang boleh anda gunakan untuk tujuan ini. Sekiranya anda menggunakan math.floor () kaedah, anda akan mendapat nombor dari 0 hingga (X-1). Sekiranya anda menggunakannya math.ceiling () kaedah anda akan mendapat integer dari 1 hingga X.

Untuk mencari nombor rawak antara 0 dan (X-1), gunakan:

Math.floor ((Math.random ()% 1) * X)

Ini amat berguna untuk mencari unsur array rawak.

Untuk mencari nombor rawak antara 1 dan X, gunakan:

Math.ceiling ((Math.random ()% 1) * X)

Tugas seperti ini yang agak biasa tetapi memerlukan sedikit menaip adalah calon yang baik untuk menjadi fungsi.

Untuk perbincangan tentang perbezaan antara nombor rawak yang sebenar dan nombor pseudo-rawak yang kami gunakan di sini, sumber nombor yang benar-benar rawak, dan beberapa contoh perkara yang menyeronokkan yang boleh anda lakukan dengan nombor rawak atau pseudo-rawak menyemak www.random. org

Arahan Video: ATTA VS JESS NO LIMIT - Menang 2X Sama TOP GLOBAL!! (Mungkin 2024).