JavaScript では、カスタム オブジェクトのメソッドの定義は、プロトタイプ オブジェクトを使用するか、コンストラクター関数内でこれを使用することで実現できます。 。後者のアプローチではプライベート インスタンス変数が可能ですが、インスタンスごとに関数が重複する可能性があるため、パフォーマンスに関する懸念が生じます。
このパフォーマンスに関する主張を調査するために、jsperf ベンチマーク ツールを使用した実験を詳しく見てみましょう: https:// jsperf.app/prototype-vs-this.
結果は、プロトタイプを介してメソッドを宣言する方が実際に高速であることを示しています。ただし、この違いが実際のアプリケーションにどの程度影響するかについては議論の余地があります。
過剰なオブジェクトのインスタンス化 (アニメーション ステップあたり 10000 など) が発生しない限り、アプリのパフォーマンスのボトルネックがメソッドの初期化に起因することはほとんどありません。
パフォーマンスが重要なシナリオの場合は、プロトタイプを介してメソッドを宣言するなどのマイクロ最適化手法が考慮される場合があります。それ以外の場合、メソッドの選択は開発者の好みによって異なります。
JavaScript にはプライベート プロパティの前にアンダースコア (_process()) を付ける規則があることに注意してください。開発者は通常、この慣行を尊重しますが、その強制に依存するのは現実的ではない可能性があります。
以上がプロトタイプ関数とコンストラクター関数: JavaScript ではどちらのメソッドがより優れたパフォーマンスを提供しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。