Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. JavaScript error reference
  5. TypeError: can't assign to property "x" on "y": not an object

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 assign to property "x" on "y": not an object

A exceção do modo strict do Javascript "can't assign to property" ocorre quando é feitaa tentativa de criar uma propriedade em um valorprimitivocomo umsymbol, umastring, umnumber ou umboolean.Valoresprimitivos nâo podem ter nenhumapropriedade.

Mensagem

js
TypeError: can't assign to property "x" on {y}: not an object (Firefox)TypeError: Cannot create property 'x' on {y} (Chrome)

Tipo de Erro

TypeError.

O que deu errado?

NoStrict_mode, umTypeError é gerado quando é feita a tentativa decriar uma propriedade em um valorprimitivo comoumsymbol, umastring, umnumber ou umboolean.Valoresprimitivos não podem ter nenhumapropriedade.

O problema pode ser que um valor inesperado está em um lugar inesperado, ouque uma variante de objeto de umaString ou umNumber é esperado.

Exemplos

Casos inválidos

js
"use strict";var foo = "minha string";// A linha a seguir não faz nada se não estiver em modo strict.foo.bar = {}; // TypeError: can't assign to property "bar" on "my string": not an object

Corrigindo o problema

Corrija o código para evitar que umprimitivo seja usado em tais lugares, ou corrija o problema criando o objeto homólogoObject.

js
"use strict";var foo = new String("minha string");foo.bar = {};

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp