この質問は、意図的に この質問のように表現されています。
これが可能かどうかさえわかりませんが、JSで列挙できないいくつかのプロパティについて漠然と聞いたことを覚えています。
とにかく、簡単に言うと、ドキュメントがなく、コードに簡単にアクセスできないjsフレームワークで何かを開発しているので、オブジェクトで何ができるかを知るのに非常に役立ちます。
この質問は、意図的に この質問のように表現されています。
これが可能かどうかさえわかりませんが、JSで列挙できないいくつかのプロパティについて漠然と聞いたことを覚えています。
とにかく、簡単に言うと、ドキュメントがなく、コードに簡単にアクセスできないjsフレームワークで何かを開発しているので、オブジェクトで何ができるかを知るのに非常に役立ちます。
これがあなたが探しているものだと思います:
var obj = { locaMethod: function() { alert("hello"); }, a: "b", c: 2 };
for(var p in obj)
{
if(typeof obj[p] === "function") {
// its a function if you get here
}
}
オブジェクトに直接設定されているメソッドを列挙できるはずです。たとえば、次のようになります。
var obj = { locaMethod: function() { alert("hello"); } };
ただし、ほとんどのメソッドは、次のようにオブジェクトのプロトタイプに属します。
var Obj = function ObjClass() {};
Obj.prototype.inheritedMethod = function() { alert("hello"); };
var obj = new Obj();
その場合、Obj.prototype のプロパティを列挙することで、継承されたメソッドを見つけることができます。
以下を使用できます。
var obj = { locaMethod: function() { alert("hello"); }, a: "b", c: 2 };
for(var p in obj)
{
console.log(p + ": " + obj[p]); //if you have installed Firebug.
}