| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Bad_super_prop | [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 "Verwendung von Super-Eigenschafts-/Mitgliedszugriffen nur in Methoden oder eval-Code innerhalb von Methoden zulssig" tritt auf, wenn die Syntax super.x oder super[x] auerhalb einer Methode verwendet wird.
SyntaxError: 'super' keyword unexpected here (V8-based) SyntaxError: use of super property accesses only valid within methods or eval code within methods (Firefox) SyntaxError: super is not valid in this context. (Safari)
SyntaxError
Die Syntax super.x wird verwendet, um auf Eigenschaften im Prototyp des aktuellen Objekts zuzugreifen. Sie kann in Methoden sowohl von Objektliteralen als auch von Klassen, Feldinitialisierern und statischen Initialisierungsblcken verwendet werden, aber nicht in anderen Kontexten.
Sie knnen super.x nicht auerhalb einer Methode in einem Objekt verwenden:
const obj = {
__proto__: { x: 1 },
x: super.x, // SyntaxError: use of super property accesses only valid within methods or eval code within methods
};
Sie knnen super.x nicht in einer Funktion verwenden, selbst wenn diese Funktion die Wirkung hat, eine Methode zu sein:
function getX() {
return super.x; // SyntaxError: use of super property accesses only valid within methods or eval code within methods
}
const obj = {
getX,
getX2: function () {
return super.x; // SyntaxError: use of super property accesses only valid within methods or eval code within methods
},
};
class Derived extends Base {
getX = () => super.x;
}
Sie knnen super.x in einer Methode verwenden:
class Base {
x = 1;
}
class Derived extends Base {
getX() {
return super.x;
}
}
Sie knnen super.x in einem Feldinitialisierer verwenden:
class Derived extends Base {
x = super.x;
}
Sie knnen super.x auch in Objektmethoden verwenden:
const obj = {
__proto__: { x: 1 },
getX() {
return super.x;
},
};
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 |