From 68fc8e96a9629e73469ed457abd955e548ec670c Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:49:58 +0100 Subject: unslug pt-br: move --- files/pt-br/glossary/mutable/index.html | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 files/pt-br/glossary/mutable/index.html (limited to 'files/pt-br/glossary/mutable') diff --git a/files/pt-br/glossary/mutable/index.html b/files/pt-br/glossary/mutable/index.html new file mode 100644 index 0000000000..fa45a08981 --- /dev/null +++ b/files/pt-br/glossary/mutable/index.html @@ -0,0 +1,44 @@ +--- +title: Mutável +slug: Glossario/Mutavel +tags: + - mutavel +translation_of: Glossary/Mutable +--- +

Mutável é o tipo da variável que pode ser alterada. Em {{glossary("JavaScript")}}, somente {{Glossary("Object","objetos")}} e {{Glossary("Array","arrays")}} são mutáveis, {{Glossary("primitive", "valores primitivos")}} não.

+ +

(Você pode fazer o nome da variável apontar para um novo valor, mas o valor anterior continua na memória. Logo, a necessidade da coleta de lixo, "garbage collection")

+ +

Um objeto mutável é um objeto cujo estado pode ser modificado após sua criação.

+ +

Imutáveis são os objetos cujo o estado não podem ser mudados uma vez criados.

+ +

Strings e Numbers são imutáveis. Vamos entender isso com um exemplo:

+ +
var stringImutavel = 'Hello';
+
+// No código acima, um novo objeto com o valor string é criado.
+
+stringImutavel = stringImutavel + 'World';
+
+// Agora nós estamos anexando 'World' ao valor existente.
+ +

Ao anexar a 'stringImutavel' com um valor de string, os seguintes eventos ocorrem:

+ +
    +
  1. O valor existente de 'stringImutavel' é recuperado.
  2. +
  3. 'World' é anexado ao valor existente de 'stringImutavel'.
  4. +
  5. O valor resultante é então alocado para um novo bloco na memória.
  6. +
  7. O objeto 'stringImutavel' agora aponta para um novo espaço de memória criado.
  8. +
  9. O espaço de memória criado anteriormente está habilitado para a coleta de lixo.
  10. +
+ +

 

+ +

Aprenda mais

+ +

Conhecimentos gerais

+ + -- cgit v1.2.3-54-g00ecf