diff options
author | Nathália Pissuti <nathaliapissuti@gmail.com> | 2021-10-23 13:44:20 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-23 13:44:20 -0300 |
commit | 2e20d520dd8f64ed3a92b0ebc8a4d4ee3fa8e692 (patch) | |
tree | 581fdec9bae9e4d0663f9d64487d483246e1e28c /files/pt-br | |
parent | d4ede94319fe16510ad6dfb4c63944cda723d8e8 (diff) | |
download | translated-content-2e20d520dd8f64ed3a92b0ebc8a4d4ee3fa8e692.tar.gz translated-content-2e20d520dd8f64ed3a92b0ebc8a4d4ee3fa8e692.tar.bz2 translated-content-2e20d520dd8f64ed3a92b0ebc8a4d4ee3fa8e692.zip |
Javascript reference error cant_assign_to_property page in pt-br (#2712)
Diffstat (limited to 'files/pt-br')
-rw-r--r-- | files/pt-br/web/javascript/reference/errors/cant_assign_to_property/index.md | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/errors/cant_assign_to_property/index.md b/files/pt-br/web/javascript/reference/errors/cant_assign_to_property/index.md new file mode 100644 index 0000000000..e19aa7e2a3 --- /dev/null +++ b/files/pt-br/web/javascript/reference/errors/cant_assign_to_property/index.md @@ -0,0 +1,64 @@ +--- +title: 'TypeError: can''t assign to property "x" on "y": not an object' +slug: Web/JavaScript/Reference/Errors/Cant_assign_to_property +tags: + - Error + - Errors + - JavaScript + - TypeError +--- +{{jsSidebar("Errors")}} + +A exceção do modo strict do Javascript "can't assign to property" ocorre quando é feita +a tentativa de criar uma propriedade em um valor [primitivo](/pt-BR/docs/Glossary/Primitive) +como um [symbol](/pt-BR/docs/Glossary/Symbol), uma [string](/pt-BR/docs/Glossary/String), um [number](/pt-BR/docs/Glossary/Number) ou um [boolean](/pt-BR/docs/Glossary/Boolean). +Valores [primitivos](/pt-BR/docs/Glossary/Primitive) nâo podem ter nenhuma [propriedade](/pt-BR/docs/Glossary/property/JavaScript). + +## 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 + +{{jsxref("TypeError")}}. + +## O que deu errado? + +No {{jsxref("Strict_mode")}}, um {{jsxref("TypeError")}} é gerado quando é feita a tentativa de +criar uma propriedade em um valor [primitivo](/pt-BR/docs/Glossary/Primitive) como +um [symbol](/pt-BR/docs/Glossary/Symbol), uma [string](/pt-BR/docs/Glossary/String), um [number](/pt-BR/docs/Glossary/Number) ou um [boolean](/pt-BR/docs/Glossary/Boolean). +Valores [primitivos](/pt-BR/docs/Glossary/Primitive) não podem ter nenhuma [propriedade](/pt-BR/docs/Glossary/property/JavaScript). + +O problema pode ser que um valor inesperado está em um lugar inesperado, ou +que uma variante de objeto de uma {{jsxref("String")}} ou um {{jsxref("Number")}} é esperado. + +## Exemplos + +### Casos inválidos + +```js example-bad +'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 um [primitivo](/pt-BR/docs/Glossary/Primitive) seja usado em tais lugares, ou corrija o problema criando o objeto homólogo {{jsxref("Object")}}. + +```js example-good +'use strict'; + +var foo = new String("minha string"); +foo.bar = {}; +``` + +## Veja também + +- {{jsxref("Strict_mode")}} +- [Primitivo](/pt-BR/docs/Glossary/Primitive) |