• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:素朴な疑問です)

関数実行速度計測の自動追加

このQ&Aのポイント
  • 関数やオブジェクトに一律して同じ処理を自動的に追加する方法として、関数実行速度の計測を考えています。
  • 具体的な実装方法として、関数内で実行開始時と終了時のタイムスタンプを取得し、差分を計算することで実行時間を計測します。
  • この方法を採用すれば、関数を定義するだけで自動的に実行時間の計測が行われるようになります。

質問者が選んだベストアンサー

  • ベストアンサー
  • dyna_1550
  • ベストアンサー率34% (122/353)
回答No.1

JavaScriptはオブジェクト指向で、クラス定義ができます。 継承やオーバーライドもできるので、それを利用すれば可能と思います。 以下のソースは、テストしていないので、多分にバグがあるかもしれませんが・・ オーバーライドでは、以下のような感じになると思います。 myFunction()という仮の関数を作成し、後でオーバーライドします。 // 共通クラスを作る function baseModule() {   this.action() {    startTime = (new Date()).getMilliseconds();    // あとから実装される処理     this.myFunction();    endTime = (new Date()).getMilliseconds();    exeTime = endTime - startTime;    }    this.myFunction() {      // Nothing    } } 自動的に追加する箇所は以下のような感じ。 var foo = new baseModule() ; // 関数をオーバーライド foo.myFunction() {   for(i=0;i<10000;i++){}; } // 実行 foo.action();

t_netbug
質問者

お礼

やっぱり提示していただいたような書き方になってしまいますよね…。 どうもありがとうございます!

t_netbug
質問者

補足

書き込み数的にも、ご提示頂いた書き方が最高系のようですね! 質問締め切ります! ありがとうございました!

関連するQ&A