Heim >Web-Frontend >js-Tutorial >Wie können Sie die Klasse eines Objekts in JavaScript bestimmen?

Wie können Sie die Klasse eines Objekts in JavaScript bestimmen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-06 08:34:10376Durchsuche

How Can You Determine the Class of an Object in JavaScript?

Die dynamische Natur von JavaScript verstehen: Objektklassen bestimmen

Im Gegensatz zu Sprachen wie Java fehlt JavaScript ein direktes Äquivalent zu Javas .getClass() Methode aufgrund ihres einzigartigen prototypbasierten Designs. Es gibt jedoch verschiedene Techniken, um eine ähnliche Funktionalität zu erfüllen.

Optionen zum Bestimmen von Objektklassen in JavaScript:

  • typeof: Gibt die zurück Datentyp (z. B. „Objekt“, „Funktion“) eines Variable.
  • instanceof: Testet, ob ein Objekt zu einer bestimmten Klasse gehört oder von dieser abstammt.
  • obj.constructor: Zeigt auf Konstruktorfunktion, die das Objekt erstellt hat.
  • func.prototype, proto.isPrototypeOf: Ermöglicht die Überprüfung der Vererbung, indem überprüft wird, ob ein Prototyp der Prototyp eines Objekts ist.

Beispiele:

function Foo() {}
var foo = new Foo();

typeof Foo; // == "function"
typeof foo; // == "object"

foo instanceof Foo; // == true
foo.constructor.name; // == "Foo"
Foo.name // == "Foo"

Foo.prototype.isPrototypeOf(foo); // == true

Foo.prototype.bar = function (x) {return x+x;};
foo.bar(21); // == 42

Hinweis : Minimierungstools wie Uglify können Klassennamen ändern. Um dies in Build-Tools wie Gulp oder Grunt zu verhindern, setzen Sie den Parameter --mangle auf false.

Das obige ist der detaillierte Inhalt vonWie können Sie die Klasse eines Objekts in JavaScript bestimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:WARUM SIE ES6 LERNEN SOLLTENNächster Artikel:WARUM SIE ES6 LERNEN SOLLTEN