忍者ブログ

からすまる日誌

20191216_pm02 パスワードの生成

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

20191216_pm02 パスワードの生成

サクラエディタ:
行選択してctrl押しながら別の行にドラッグするとコピーできる 

大文字、小文字、数字で8文字のパスワード
 
ということは、混ぜたものがあるわけだから、
1.何がチェックされたか
2.チェックされたもののなかから、ランダムで
2-1 まず何の配列からもってくるか(大・小・数字・記号)
2-2 配列の何番目からもってくるか
3.たす
という流れ??
 
1回でたからといってもう一度使っていけないわけではないのがトランプのカードとは違う。
 
→まず配列の用意の仕方をまちがえた。
全部の(小文字・大文字・数字・記号を)含んだ超長い配列を用意すべき(じゃないと複雑になりすぎる)
つまり2-1の仮定からおかしかった。
 
おおざっぱな枠はこうなる
 
 
 var moji = ['a','b','c','d','e',//配列0から4までは小文字
       'A','B','C','D','E',//配列5-9が大文字
       '0','1','2','3','4',//配列10-14が数字
       '!','#','$','&','?'];//配列15-20が記号。testで短め
 $('#btn').on.('click',function(){
  var passStr ="";//初期化
  for (i=0; i<8; i++){//8回回す
    
   passStr += moji[ran];
  }
 
 }

ランダムで文字を8回たす 
こういう形になる
  
--->pass.js(注意)
 
 $(function(){
 console.log('foo');
 
 var moji = ['a','b','c','d','e',//配列0から4までは小文字
       'A','B','C','D','E',//配列5-9が大文字
       '0','1','2','3','4',//配列10-14が数字
       '!','#','$','&','?'];//配列15-20が記号。testで短め
 $('#btn').on('click',function(){
  var passStr ="";//初期化
  for (i=0; i<8; i++){//8回回す
   var ran=Math.floor(Math.random()*moji.length);   
   passStr += moji[ran];
  }
 $('#pass').text(passStr);
 });
});
 

ただ、これだと
①拡張性に弱い
②そのうえ小文字だけとかどーやって取り出すんだとか大変複雑になる
 
というわけで配列じゃなくて普通に「何文字目を取り出す」という形を使えば、単にながい文字列をもっていればいいということになる。
 
 var moji1 = "abcde";//testで短めにしてある。本来26文字
 var moji2 = "ABCDE";
 var moji3 = "12345";
 var moji4 = "!#$&?";
 
こういう文字列からランダムに取り出せばいいということになる
 
チェックボックスのon/offによって、この抽出元の文字列自体を足せばいいということか。ああなるほど。
つまりこうなる
 
--->pass.js
 
$(function(){
 console.log('foo');
 
 var moji1 = "abcde";//testで短め
 var moji2 = "ABCDE";
 var moji3 = "12345";
 var moji4 = "!#$&?";
 
 var moji = moji1+moji2+moji3+moji4;
 console.log('moji is '+moji);
 
 $('#btn').on('click',function(){
  var passStr ="";//初期化すると同時に、これが文字列であると示す
  for (i=0; i<8; i++){//8回回す
   var ran=Math.floor(Math.random()*moji.length);
   passStr += moji.charAt(ran);//何文字目か
   
  }
 $('#pass').text(passStr);
 });
});
 

チェックボックスにチェックがはいっているかどうかはどうする??
 
 
PR

コメント

ブログ内検索

カレンダー

03 2025/04 05
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30