Rumah  >  Artikel  >  hujung hadapan web  >  js secara rawak menjana rentetan gabungan alfanumerik, kemahiran javascript_nombor animasi rawak

js secara rawak menjana rentetan gabungan alfanumerik, kemahiran javascript_nombor animasi rawak

WBOY
WBOYasal
2016-05-16 15:41:022136semak imbas

animasi rawak js untuk menjana satu set nombor rawak


Pratonton dalam talian Klik untuk memuat turun

Penerangan kesan:

Hanya satu fail index.html dalam lampiran yang sah

Ia mengandungi dua bahagian: css dan html

Beberapa nombor rawak yang dijana oleh js tulen

Jangan ulang setiap kali Klik butang untuk bertukar lagi

Penggunaan:

1. Perkenalkan gaya css ke dalam halaman web anda

2. Salin bahagian kod dalam badan ke tempat yang anda perlukan

JS menjana rentetan alfanumerik rawak

Kata Pengantar

Terdapat keperluan baru-baru ini untuk menjana rentetan rawak gabungan abjad angka dengan panjang 3-32 digit, dan satu lagi adalah untuk menjana rentetan rawak 43 digit.

Kaedah 1

Cara penulisan yang menarik

Math.random().toString(36).substr(2);

Hasil keluaran

Penjelasan

Ia sangat menarik selepas beberapa kajian, pada asasnya spesifikasi parameter selepas toString boleh menjadi sebarang integer antara 2-36. Jika tidak ditulis, nilai lalainya ialah 10 (iaitu, nilai yang dikembalikan pada masa ini adalah rawak). nombor.

Jika ia adalah nombor genap, rentetan berangka yang dikembalikan akan menjadi pendek. Jika ia adalah nombor ganjil, nilai perwakilan yang sangat panjang akan dikembalikan.
Jika e4b9f0ffe02e8391de8b61a4490338d010 akan mengandungi huruf.
Jadi, jika anda ingin mendapatkan rentetan panjang aksara rawak, anda perlu menggunakan parameter > 10 dan nombor ganjil, dan gunakan slice(2,n) untuk memintas mengikut panjang!

Kaedah 2

Terdapat banyak cara untuk melaksanakan ini Memandangkan cara penulisan sebelum ini tidak memenuhi keperluan, saya menulis yang seterusnya.

Alamat

https://gist.github.com/xuanfeng/b23ab28ab412254e1594

Kod

/*
** randomWord 产生任意长度随机字母数字组合
** randomFlag-是否任意长度 min-任意长度最小位[固定位数] max-任意长度最大位
** xuanfeng 2014-08-28
*/
 
function randomWord(randomFlag, min, max){
 var str = "",
 range = min,
 arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
 
 // 随机产生
 if(randomFlag){
 range = Math.round(Math.random() * (max-min)) + min;
 }
 for(var i=0; i<range; i++){
 pos = Math.round(Math.random() * (arr.length-1));
 str += arr[pos];
 }
 return str;
}

Cara menggunakan

Jana rentetan rawak 3-32 digit: rawakWord(benar, 3, 32)

Jana rentetan rawak 43 digit: randomWord(false, 43)

Beberapa kegunaan js untuk menjana nombor rawak

<script> 
function GetRandomNum(Min,Max)
{ 
var Range = Max - Min; 
var Rand = Math.random(); 
return(Min + Math.round(Rand * Range)); 
} 
var num = GetRandomNum(1,10); 
alert(num); 
</script>
var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
function generateMixed(n) {
 var res = "";
 for(var i = 0; i < n ; i ++) {
  var id = Math.ceil(Math.random()*35);
  res += chars[id];
 }
 return res;
}

1.Math.random(); Hasilnya ialah nombor rawak antara 0-1 (termasuk 0, tidak termasuk 1)

2.Math.floor(num); Nombor parameter ialah nilai berangka, dan hasil fungsi ialah bahagian integer bagi nombor.

3.Math.round(num); Nombor parameter ialah nilai berangka, dan hasil fungsi ialah integer selepas nombor dibundarkan.

Matematik: Objek matematik, menyediakan pengiraan matematik pada data.

Math.random(); Mengembalikan nombor rawak antara 0 dan 1 (termasuk 0, tidak termasuk 1).

Math.ceil(n); Mengembalikan integer terkecil lebih besar daripada atau sama dengan n.

Apabila menggunakan Math.ceil(Math.random()*10);, anda terutamanya mendapat integer rawak dari 1 hingga 10, dan kebarangkalian untuk mendapat 0 adalah sangat kecil.

Math.round(n); Mengembalikan nilai n selepas pembundaran.

Gunakan Math.round(Math.random()); untuk mendapatkan integer rawak dari 0 hingga 1 sama rata.

Apabila menggunakan Math.round(Math.random()*10);, anda boleh mendapatkan integer rawak dari 0 hingga 10 secara asasnya seimbang, dan kebarangkalian untuk mendapatkan nilai minimum 0 dan nilai maksimum 10 adalah kurang daripada separuh.

Math.floor(n); Mengembalikan integer terbesar kurang daripada atau sama dengan n.

Apabila menggunakan Math.floor(Math.random()*10);, integer rawak dari 0 hingga 9 boleh diperolehi sama rata.

Artikel ini akan berkongsi dengan anda kandungan yang berkaitan dengan js menjana nombor rawak Jika anda ingin mengetahui lebih lanjut tentang nombor rawak js, sila teruskan memberi perhatian kepada laman web kami akan dikemas kini dengan kandungan baharu setiap hari.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn