成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

避免悲劇 JavaScript密碼生成器

開發 前端
最近被暴庫的很多,密碼安全成為重大問題!如何避免簡單密碼呢?還在冥思苦想密碼?No

我為大家準備了一個密碼生成工具,有0-9和a-k的英文字母組成,數字是亂序排列。字母隨機一個替換掉一個數字,生成一個長度為10的密碼。

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"   
  2.         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">    
  3. <html xmlns="http://www.w3.org/1999/xhtml">    
  4. <head>    
  5.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    
  6.     <title></title>    
  7. </head>    
  8. <body>    
  9. <div>    
  10.      
  11. <input id="strat" type="button" value="開始" />    
  12. <textarea rows="10" cols="25" id="password"></textarea>    
  13. </div>    
  14. <script type="text/javascript">    
  15. void function(window,doc,undefined){    
  16.     var array=[],text='abcdefghijk',key,password='',btn=doc.getElementById('strat'),textarea=doc.getElementById('password');    
  17.      
  18.     function unorderedArray(array){    
  19.         if(({}).toString.call(array).indexOf('Array')===-1) return;    
  20.         var arr=[],value=array.toString();    
  21.         arr=array.sort(function(){return Math.random()>0.5?-1:1;});    
  22.         (arr.toString()===value) && arguments.callee(array);    
  23.         return arr;    
  24.     }    
  25.      
  26.      
  27.     btn.onclick=function(){    
  28.         key=Math.random().toFixed(1) * 10-1;    
  29.         array=[0,1,2,3,4,5,6,7,8,9];    
  30.         password=unorderedArray(array);    
  31.         password[key]=text[key];    
  32.         textarea.innerHTML=password.join('');    
  33.     }    
  34. }(window,document);    
  35.      
  36.      
  37.     //console.log(unorderedArray(a));    
  38. </script>    
  39.      
  40. </body>    
  41. </html>   

怎樣亂序排列數組,本人數學比較爛。搜索了一下給array的sort傳入一個這樣的函數。

sort真是強大啊。

  1. function unorderedArray(array){  
  2.         if(({}).toString.call(array).indexOf('Array')===-1) return;  
  3.         var arr=[],value=array.toString();  
  4.         arr=array.sort(function(){return Math.random()>0.5?-1:1;});  
  5.         (arr.toString()===value) && arguments.callee(array);  
  6.         return arr;  

在用這個方法的時候要避免生成的數組和傳入的數組一樣,頗廢了點功夫,因為數組是復雜類型,有修改所有的都會有變化。所以用一個變量去緩存了傳入的數組的值value=array.toString(),然后我生成的數組的值比較一下如果相對就遞歸一次。保證生成的數組不是順序的。

用下面的代碼生成一個0-9的隨機數序號

  1. Math.random().toFixed(1) * 10-1; 

用這個序號去獲得a-k的一個字母,用這個字母去替換數組中序號相應位置的數字。

在用數組的join方法把獲得的數組字符串化

  1. password.join(''); 

獲得一個密鑰。

原文:http://www.cnblogs.com/enix/archive/2011/12/22/2297913.html

【編輯推薦】

  1. 大型JavaScript應用程序架構模式
  2.  非常全面的實用JavaScript開發工具列表
  3. JavaScript學習筆記 有問有答
  4. JavaScript函數式編程
  5. JavaScript DOM編程手冊
責任編輯:陳貽新 來源: 小玉西瓜的博客
相關推薦

2022-10-17 18:29:55

2023-07-21 17:08:30

2023-03-01 00:07:32

JavaScript迭代器生成器

2011-05-19 11:30:00

密碼密碼生成器

2025-01-06 09:06:04

JavaScriptWeb 開發Generators

2015-08-25 11:07:58

2017-07-01 16:02:39

分布式ID生成器

2025-01-23 08:36:27

CSS開發工具

2010-09-07 16:31:17

SQL語句insert

2021-04-22 21:15:38

Generator函數生成器

2017-09-09 15:13:10

2022-02-15 10:30:58

UUID

2024-11-01 15:51:06

2017-09-06 09:26:03

Python生成器協程

2023-07-02 14:14:37

ChatGPTMidjourney

2021-12-04 22:07:44

Python

2015-08-25 15:54:17

程序員代碼生成器

2021-07-23 11:24:54

Create Inc開源G代碼生成器

2024-08-19 00:00:00

表單生成器開發開源

2023-05-17 16:02:00

CSS工具代碼生成器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产视频欧美 | 一区二区国产在线观看 | 黄色毛片在线观看 | av天天看| 91综合在线视频 | 亚洲精品成人 | 日韩精品在线播放 | 久久曰视频 | 激情五月激情综合网 | 国产精品自拍视频 | 国产精品99久久久久久www | 日韩成人免费在线视频 | 一区二区三区免费观看 | 成人片免费看 | 精品久久久久久久 | 免费av观看| 超碰97免费在线 | 中文在线播放 | 欧美日韩在线免费 | 久久精品一区 | 青青草免费在线视频 | 国产精品jizz在线观看老狼 | 欧美a在线 | 国产剧情久久 | 国产高清精品一区二区三区 | 免费黄网站在线观看 | 亚洲国产精品一区 | 成人特级毛片 | 日韩视频一级 | 在线观看成年人视频 | 亚洲第一网站 | 在线看一区二区 | 91精品国产乱码久久久久久久久 | 视频一区二区三区中文字幕 | 精品免费国产视频 | 综合激情久久 | 亚洲 中文 欧美 日韩 在线观看 | 在线成人 | 久久精品国产一区二区电影 | 美女人人操 | 久久久久久黄 |