Node.jsでメソッドの引数の数をチェックする方法

Node.jsでメソッドの引数の数をチェックする方法

Function.lengtharguments.lengthを使用することによって、引数の数をチェックを行うことができます。

arguments.lengthは実際の引数の数を返します。それに対してFunction.lengthは期待する引数の数を返します。

staticなメソッド

staticなメソッドに対して期待する引数の数を取得するには、クラス名.メソッド名.lengthで取得することが出来ます。

class Sample {
  static get(a, b) { // 期待する引数は2
    if (arguments.length < Sample.get.length) {
      throw new Error(`${arguments.length}<${Sample.get.length}です`)
    }
    // 正常処理
  }
}

Sample.get('test') // 実引数は1

staticではないメソッド

staticではないメソッドの場合に、期待する引数の数を取得するには、this.メソッド名.lengthで取得することが出来ます。

class Sample {
  get(a, b) { // 期待する引数は2
    if (arguments.length < this.get.length) {
      throw new Error(`${arguments.length}<${this.get.length}です`)
    }
    // 正常処理
  }
}

const abc = new Sample()
abc.get('test') // 実引数は1

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

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