ホームページ  >  記事  >  ウェブフロントエンド  >  オブジェクトのすべてのメソッドをリストするにはどうすればよいですか?

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

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-19 16:22:02812ブラウズ

How Can I List All Methods of an Object?

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

問題:

オブジェクトのメソッドを決定する指定されたオブジェクトで使用可能なすべてのメソッドを次のようにリストします。

 alert(show_all_methods(Math));

予想される出力:

abs, acos, asin, atan, atan2, ceil, cos, exp, floor, log, max, min, pow, random,round, sin, sqrt, tan, …

解決策:

すべてを列挙するにはオブジェクトに属するプロパティ (メソッドを含む) は、Object.getOwnPropertyNames() メソッドを使用します。このメソッドはプロパティ名の配列を提供します:

console.log(Object.getOwnPropertyNames(Math));
//-> ["E", "LN10", "LN2", "LOG2E", "LOG10E", "PI", ...etc ]

その後、filter() メソッドを使用してメソッドのみを分離します:

console.log(Object.getOwnPropertyNames(Math).filter(function (p) {
    return typeof Math[p] === 'function';
}));
//-> ["random", "abs", "acos", "asin", "atan", "ceil", "cos", "exp", ...etc ]

ES3 ブラウザーの注意:

IE 8 以前などの ES3 ブラウザでは、組み込みオブジェクト プロパティを列挙できません。ただし、この除外はウィンドウやドキュメントなどのオブジェクトには適用されません。これらのオブジェクトは通常ブラウザによって定義され、列挙可能である可能性が高くなります。

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

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