この動画はメンバー限定動画です
全ての講座が
月額990円で学び放題
前のレッスンの続きを作成していきましょう。前のレッスンで作成したプログラムを次のような状態にしておきましょう。
// password.ts
const seeds: string[] = [
"A", "B", "C",
"a", "b", "c",
"1", "2", "3",
"!", "#", "@",
];
繰り返しパスワードをつないでいこう
1文字ずつ、ランダムで取り出した文字はパスワードの文字列の長さの回数だけ繰り返しながら、つないでいきます。次のようにしていきましょう。まずは必要な定数を宣言します。
const password_length: number = 5;
let password: string = '';
let random: number;
ここでは、「password_length」に5を代入しているため、5回繰り返して5文字のパスワードを生成ます。次のようなfor構文を作成しましょう。
for (let i: number=0; i<password_length; i++) {
random = Math.floor(Math.random() * seeds.length);
password += seeds[random];
}
console.log(password);
このプログラムを実行すると、ランダムな文字が5文字つながったパスワードができあがります。
コマンドパラメーターを受け取ろう
コマンドのパラメーターはすでに紹介したとおり「process.argv[2]」で取得することができます。ただし「@types/node」というパッケージというものが必要になるため、もしまだインストールしていない場合は次のコマンドでインストールしておきましょう。
npm i --save-dev @types/node
そしたら、次のようにして受け取ります。
let password_length: number = Number(process.argv[2]);
これで、次のように呼び出すことで長さを指定できます。
node js/password.js 10
これで、指定した長さのパスワードを生成することができます。