ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript でオブジェクトのすべてのメソッドを取得するにはどうすればよいですか?

JavaScript でオブジェクトのすべてのメソッドを取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-19 16:18:31578ブラウズ

How to Retrieve All Methods of an Object in JavaScript?

オブジェクトのすべてのメソッドを表示する方法

JavaScript では、オブジェクトで使用できるすべてのメソッドを取得するのが一般的なタスクです。これを実現するためのソリューションを詳しく見てみましょう:

アプローチ:

オブジェクトのすべてのメソッドをリストするには、Object.getOwnPropertyNames() メソッドを利用できます。このメソッドは、メソッドやプロパティなど、オブジェクトに属するすべてのプロパティ名の配列を取得します。

メソッドのみをフィルタリングして除外するには、次のように filter() 関数を利用できます:

<code class="javaScript">const objectMethods = Object.getOwnPropertyNames(object).filter(property => typeof object[property] === 'function');</code>

例:

Math オブジェクトについて考えてみましょう。上記の代コードを使用すると、そのすべてのメソッドを取得できます:

<code class="javaScript">console.log(Object.getOwnPropertyNames(Math).filter(property => typeof Math[property] === 'function'));</code>

これにより、次の出力が表示されます:

[
  "abs", "acos", "asin", "atan", "atan2", "ceil", "cos", "exp", "floor",
  "log", "max", "min", "pow", "random", "round", "sin", "sqrt", "tan",
  ...
]

ES3 ブラウザ:

ES3 ブラウザ (IE 8 以前など) では、組み込みオブジェクトのプロパティを列挙できません。ただし、ウィンドウやドキュメントなどのオブジェクトは設計により列挙可能です。つまり、これらの組み込みオブジェクトのメソッドをリストしようとすると、いくつかの制限が発生する可能性があります。

命名規則に関する注意:

オブジェクトのプロパティに名前を付けるときは注意してください。同じ名前の組み込みプロトタイプ プロパティまたはメソッドがある場合、{ DontEnum } 属性に関連するバグにより、IE は for...in ループを使用するときにそれをスキップすることがあります。

以上がJavaScript でオブジェクトのすべてのメソッドを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。