Heim >Web-Frontend >js-Tutorial >Wie rufe ich alle Methoden eines Objekts in JavaScript ab?
So zeigen Sie alle Methoden eines Objekts an
In JavaScript ist das Abrufen aller für ein Objekt verfügbaren Methoden eine häufige Aufgabe. Schauen wir uns die Lösung an, um dies zu erreichen:
Ansatz:
Um alle Methoden eines Objekts aufzulisten, können Sie die Methode Object.getOwnPropertyNames() verwenden. Diese Methode ruft ein Array aller Eigenschaftsnamen ab, die zu einem Objekt gehören, einschließlich Methoden und Eigenschaften.
Um nur die Methoden herauszufiltern, können Sie die Funktion filter() wie folgt verwenden:
<code class="javaScript">const objectMethods = Object.getOwnPropertyNames(object).filter(property => typeof object[property] === 'function');</code>
Beispiel:
Betrachten Sie das Math-Objekt. Durch die Verwendung von 上述代码 können Sie alle seine Methoden erhalten:
<code class="javaScript">console.log(Object.getOwnPropertyNames(Math).filter(property => typeof Math[property] === 'function'));</code>
Dadurch wird die folgende Ausgabe gedruckt:
[ "abs", "acos", "asin", "atan", "atan2", "ceil", "cos", "exp", "floor", "log", "max", "min", "pow", "random", "round", "sin", "sqrt", "tan", ... ]
ES3-Browser:
In ES3-Browsern (z. B. IE 8 und niedriger) sind Eigenschaften integrierter Objekte nicht aufzählbar. Allerdings sind Objekte wie Fenster und Dokument von Natur aus aufzählbar. Dies bedeutet, dass Sie möglicherweise auf einige Einschränkungen stoßen, wenn Sie versuchen, Methoden dieser integrierten Objekte aufzulisten.
Hinweis zu Namenskonventionen:
Seien Sie vorsichtig, wenn Sie Ihre Objekteigenschaften benennen. Wenn es eine integrierte Prototypeigenschaft oder -methode mit demselben Namen gibt, überspringt der IE diese möglicherweise, wenn er eine for...in-Schleife verwendet, aufgrund eines Fehlers im Zusammenhang mit dem Attribut { DontEnum }.
Das obige ist der detaillierte Inhalt vonWie rufe ich alle Methoden eines Objekts in JavaScript ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!