この動画はメンバー限定動画です

全ての講座が
月額990円で学び放題

講座の情報を見る

TypeScript入門自由な数字でサイコロを振ろう – 関数のパラメータ

記事を共有:

  • X
  • Pocket
  • クリップボードにコピー

前のレッスンで関数を作成しました。

function getDice(): number {
  return Math.floor(Math.random() * 6) + 1;
}

この関数を拡張して、単なるサイコロではなく、自由に数字を設定してランダムに値を得られるように変更してみましょう。

パラメータを設定しよう

関数には「パラメータ」を設定することができます。次のように変更しましょう。

// function02.ts
function getDice(min: number, max: number): number {
  console.log(min); // 受け取ったパラメータを確認
  console.log(max);
  return Math.floor(Math.random() * 6) + 1;
}

関数定義のカッコの中に、受け取りたいパラメータの変数名と型を入力します。すると、関数の中で変数として利用できるようになるので、ここでは画面に表示させてみました。次のように呼び出すことができます。

console.log(getDice(10, 15));

すると、minに10が、maxに15に渡されます。

ランダムを得る計算式を変更しよう

それでは、このパラメータを使って、最小値と最大値を変更できるようにしてみましょう。戻り値の設定を次のように変更します。

return Math.floor(Math.random() * (max-min+1) + min);

これで、指定したらパラメータを最小値、最大値にしたランダムな値を得る関数を作成することができました。次のようにすれば、100から200のランダムな値を得ることができます。

console.log(getDice(100, 200));

デフォルト値を設定しよう

パラメータを設定すると便利な半面、これまでのように通常のサイコロとして使いたい場合も、次のようにパラメータを設定しなければならなくなります。

getDice(1, 6);

そこで、パラメータに「デフォルト値」を設定することで、これまで通りに簡単に利用することができるようになります。次のように変更しましょう。

function getDice(min: number = 1, max: number = 6): number {

これで、パラメータを省略して呼び出すことができるようになります。

console.log(getDice());

すると、minに1がmaxに6が代入されたのと同じ動きとなり、サイコロとして利用できるようになります。

前のレッスン 次のレッスン