Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. JavaScript-Fehlerreferenz
  5. TypeError: can't redefine non-configurable property "x"

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

TypeError: can't redefine non-configurable property "x"

Die JavaScript-Ausnahme "can't redefine non-configurable property" tritt auf, wenn versucht wurde, eine Eigenschaft neu zu definieren, aber diese Eigenschaft istnicht konfigurierbar.

Meldung

TypeError: Cannot redefine property: "x" (V8-based)TypeError: can't redefine non-configurable property "x" (Firefox)TypeError: Attempting to change value of a readonly property. (Safari)

Fehlertyp

TypeError

Was ist schiefgelaufen?

Es wurde versucht, eine Eigenschaft neu zu definieren, aber diese Eigenschaft istnicht konfigurierbar. Dasconfigurable-Attribut steuert, ob die Eigenschaft aus dem Objekt gelöscht werden kann und ob ihre Attribute (außerwritable) geändert werden können. Normalerweise sind Eigenschaften in einem durch einenObjektinitialisierer erstellten Objekt konfigurierbar. Wenn jedoch z. B.Object.defineProperty() verwendet wird, ist die Eigenschaft standardmäßig nicht konfigurierbar.

Beispiele

Nicht-konfigurierbare Eigenschaften erstellt durch Object.defineProperty

DieObject.defineProperty() erstellt nicht-konfigurierbare Eigenschaften, wenn Sie sie nicht als konfigurierbar angegeben haben.

js
const obj = Object.create({});Object.defineProperty(obj, "foo", { value: "bar" });Object.defineProperty(obj, "foo", { value: "baz" });// TypeError: can't redefine non-configurable property "foo"

Sie müssen die "foo"-Eigenschaft auf konfigurierbar setzen, wenn Sie beabsichtigen, sie später im Code neu zu definieren.

js
const obj = Object.create({});Object.defineProperty(obj, "foo", { value: "bar", configurable: true });Object.defineProperty(obj, "foo", { value: "baz", configurable: true });

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp