Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. JavaScript error reference
  5. TypeError: can't redefine non-configurable property "x"

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

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

A exceção do Javascript "can't redefine non-configurable property" ocorre quando éfeita a tentativa de redefinir uma propriedade, mas essa propriedadenão é configurável.

Mensagem

js
TypeError: Cannot modify non-writable property {x} (Edge)TypeError: can't redefine non-configurable property "x" (Firefox)TypeError: Cannot redefine property: "x" (Chrome)

Tipo de Erro

TypeError

O que deu errado?

Foi feita a tentativa de redefinir uma propriedade, mas essa propriedadenão é configurável. Oatributoconfigurable controla se a propriedade pode ser deletada doobjeto e se seus atributos (Excetowritable) podem ser alterados.Geralmente, propriedades de um objeto criado por uminicializador de objetosão configuráveis. Contudo, por exemplo, ao usarObject.defineProperty(), a propriedade não é configurável por padrão.

Exemplos

Propriedades não configuráveis criadas porObject.defineProperty

Object.defineProperty() cria uma propriedade não configurável se vocênão especificá-las como configurável.

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

Você vai precisar alterar a propriedade "foo" para configurável, se você pretende redefini-laposteriormente no código.

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

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp