數字字母混合的4位驗證碼


不管是在app注冊、登錄里,還是在網頁注冊里,都會看到驗證碼;那這個驗證碼要怎么實現呢?通過js有兩種方法可以達到這樣的效果,下面代碼奉上哦!

方法一:這個方法比較好理解,首先定義一個數組,將會產生的字母,數值都放進去;有4位就循環4次,每循環一次產生一個隨機結果,將每次的結果累加起來存入想要放的位置。

 1 var 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']
 2     //產生4位驗證碼
 3     for(var i=0;i<4;i++){
 4         pos=parseInt(Math.random()*(arr.length-1));
 5         Ophoto.value+=arr[pos];
 6     }
 7     // 驗證用戶輸入的驗證碼是否正確
 8     Ocode.onblur = function () {
 9         if(Ocode.value!=Ophoto.value){
10             alert("驗證碼輸入錯誤");
11         }
12     }

方法二:這個方法也挺好理解的,產生一個隨機字符庫,然后開始對隨機庫(str)里面的字符所對應的下標進行隨機,然后將隨機而來的下標所對應的字符累加給另一個字符串即可。

 1   function randomStr(){
 2         // 產生庫
 3         var str = "";
 4         var str1 = "";
 5         for (var i = 0; i < 4; i++) {
 6             var a = random(0, 9);
 7             var b = String.fromCharCode(random(65, 90));
 8             var c = String.fromCharCode(random(97, 122));
 9             str1 = str1 + a + b + c;
10         }
11         // 開始真正的隨機
12         for (var i = 0; i < 4; i++) {
13             str += str1[random(0, str1.length - 1)]
14         }
15         return str;
16     }
17     Ophoto.value = randomStr();
18     Ocode.onblur = function () {
19         if (Ocode.value != Ophoto.value) {
20             alert("驗證碼輸入錯誤");
21         }
22     }
23     function random(max, min) {
24         return Math.round(Math.random() * (max - min) + min);
25     }

以上兩種方法都可得到隨機數字字母混合的4位驗證碼,可以都嘗試着理解下,然后去敲敲看。若有其他方法,會更新噠!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM