TypeError: "x" ist kein nicht-null-Objekt

Die JavaScript-Ausnahme „ist kein nicht-null-Objekt“ tritt auf, wenn irgendwo ein Objekt erwartet wird und keines bereitgestellt wurde. null ist kein Objekt und wird nicht funktionieren.

Nachricht

TypeError: Property description must be an object: x (V8-based)
TypeError: Property descriptor must be an object, got "x" (Firefox)
TypeError: Property description must be an object. (Safari)

Fehlertyp

Was ist schiefgelaufen?

Ein Objekt wird irgendwo erwartet und wurde nicht bereitgestellt. null ist kein Objekt und wird nicht funktionieren. Sie müssen ein geeignetes Objekt in der gegebenen Situation bereitstellen.

Beispiele

Eigenschaftsdescriptor erwartet

Wenn Methoden wie Object.create(), Object.defineProperty() und Object.defineProperties() verwendet werden, erwartet der optionale Descriptor-Parameter ein Eigenschaftsdescriptor-Objekt. Wenn kein Objekt bereitgestellt wird (wie zum Beispiel nur eine Zahl), wird ein Fehler ausgelöst:

js
Object.defineProperty({}, "key", 1);
// TypeError: 1 is not a non-null object

Object.defineProperty({}, "key", null);
// TypeError: null is not a non-null object

Ein gültiges Eigenschaftsdescriptor-Objekt könnte so aussehen:

js
Object.defineProperty({}, "key", { value: "foo", writable: false });

Siehe auch