molily: Instanznamen in Methode der Klasse ermitteln

Beitrag lesen

Hallo,

in einigen JavaScript-Engines bekommen Funktionen, die mit Funktionsdeklarationen sowie benannten Funktionsausdrücken erzeugt wurden, ein Attribut »name«, in dem eben der Name der Funktion steht.

function Foo () {}  
var bar = function quux () {};  
alert(Foo.name); // "Foo"  
alert(bar.name); // "quux"

In deinem Fall könntest du auf den Konstruktornamen über this.constructor.name zugreifen.

Diese name-Eigenschaft wird von allen großen Engines außer IE unterstützt, ist jedoch nicht standardisiert. Wenn du browserübergreifend einheitliches Verhalten willst, dann setze explizit eine name-Eigenschaft beim Prototyp.

Mathias