| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Invalid_derived_return | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Der JavaScript-Fehler "derived class constructor returned invalid value x" tritt auf, wenn ein abgeleiteter Klassenkonstruktor einen Wert zurckgibt, der weder ein Objekt noch undefined ist.
TypeError: Derived constructors may only return object or undefined (V8-based) TypeError: derived class constructor returned invalid value 1 (Firefox) TypeError: Cannot return a non-object type in the constructor of a derived class. (Safari)
TypeError
Normalerweise muss ein Konstruktor nichts zurckgebender Wert von this wird automatisch zurckgegeben, wenn die Klasse konstruiert wird. Ein Konstruktor kann auch ein Objekt zurckgeben, und dieses Objekt wird this als neu konstruiertes Exemplar berschreiben. Das Zurckgeben eines Wertes, der weder ein Objekt noch undefined ist, ist jedoch meist ein Fehler, da dieser Wert ignoriert wird. In Basisklassen und Funktionskonstruktoren (unter Verwendung der function-Syntax) wird ein solcher Wert stillschweigend ignoriert, whrend in abgeleiteten Klassen ein Fehler geworfen wird.
class Base {
constructor() {}
}
class Derived extends Base {
constructor() {
return 2;
}
}
new Derived(); // TypeError: derived class constructor returned invalid value 2
class Base {
constructor() {}
}
class Derived extends Base {
constructor() {
return { x: 1 };
}
}
new Derived(); // { x: 1 }
Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |