Sie können die Eigenschaften im Objekt durchlaufen und deren Typ testen.
%Vor% Um zu den vorhandenen Antworten hinzuzufügen, ECMAScript 5. ed. bietet die Möglichkeit, mit der Methode Object.getOwnPropertyNames
auf alle Eigenschaften eines Objekts (auch auf nicht aufzählbare Objekte) zuzugreifen. Beim Versuch, die Eigenschaften von nativen Objekten wie Math
, a for..in
wird nichts auf der Konsole ausgeben. Jedoch,
%Vor%gibt zurück:
%Vor%Sie könnten darüber hinaus eine Hilfsfunktion schreiben, die nur Methoden für ein Objekt zurückgibt.
%Vor%Unterstützung für ECMAScript 5. Ausgabe ist an dieser Stelle etwas düster, da nur Chrome, IE9pre3 und Safari / Firefox Nightlies dies unterstützen.
Diese Funktion empfängt ein beliebiges Objekt und gibt den Namen des Prototyps, eine Liste mit allen Methoden und ein Objekt mit dem Namen seiner Eigenschaften (und deren Typen) zurück. Ich habe nicht die Möglichkeit, es in einem Browser zu testen, aber es funktioniert mit Nodejs (v0.10.24).
%Vor%Beispiel (mit Nodejs):
%Vor%Ausgabe:
%Vor%Die folgenden Beispiele funktionieren auch mit Nodejs:
%Vor%Eine einzeilige Lösung
%Vor%%Vor%['parse', 'stringify']
%Vor%['fromCharCode', 'fromCodePoint', 'roh']
['isArray', 'from', 'of']
Tags und Links javascript reflection