JS:パスワードを適当に作るサイト

JS:パスワードを適当に作るサイト JavaScript

JavaScriptを使ってパスワードを適当に作るサイトを作った。
指定した文字を使ってパスワードを適当に作ってくれます。文字の種類パスワード文字数は変更できます。

サンプルを見る

動作イメージ

パスワード文字数は、デフォルト8文字です。起動時にすでにパスワードが生成されています。
JS:パスワードを適当に作るサイト

パスワード文字数を100文字にした場合。
JS:パスワードを適当に作るサイト

文字の種類は上のテキストボックスに入力すれば自由に追加できます。
JS:パスワードを適当に作るサイト

JavaScript部分

main.js

/*
 * パスワード用文字表示エリア
 */
var characters = null;

/*
 * デフォルトのパスワード用文字
 */
var moji = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

/*
 * パスワード生成関数
 */
function getPassword(){
	// パスワード文字数取得(デフォルトは8文字)
	moji = characters.value;
	var length = Number(document.getElementById("length").value);
	if(isNaN(length) || length == "" || length == 0) length = 8;

	// パスワード生成
	var passChar = "";
	for(let i=0; i<length; i++){
		passChar += moji[Math.floor(Math.random() * moji.length)];
	}
	
	// 生成したパスワードを表示
	console.log(passChar);
	document.getElementById("result").innerHTML = passChar;
}

/*
 * 起動時の処理
 */
window.onload = function(){
	// デフォルトのパスワード文字を表示
	characters = document.getElementById("characters");
	characters.innerHTML = moji;

	// パスワード生成
	getPassword();
};

処理のポイント

1.変数にパスワードに必要な文字をあらかじめ代入しておく。

var moji = “0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz”;

2.文字配列の添え字を乱数で生成してパスワードを作成する

文字列の長さを表すlengthプロパティを利用して乱数範囲に利用する

Math.random() * moji.length

実際の乱数生成部分

// パスワード生成
var passChar = "";
for(let i=0; i<length; i++){
	passChar += moji[Math.floor(Math.random() * moji.length)];
}

コード一覧

コメント

タイトルとURLをコピーしました