Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Const e let (contador e tecla)

let se usa para variáveis devido seu valor ser alterado let contador = 0 mas porque tecla é uma constante sendo que ele é modificado por uma variavel? isso não o torna uma variavel também? const tecla = listaDeTeclas[contador]

2 respostas
solução!

Oi, Bruno! Tudo bem?

Podemos dizer que a diferença fundamental entre let e const não está relacionada a se o valor da variável pode ser alterado ou não, mas sim a como a referência da variável funciona.

O let é usado para declarar variáveis mutáveis, ou seja, variáveis cujo valor pode ser alterado. No código que estamos trabalhando, usamos let contador no loop for porque desejamos que o valor de contador seja atualizado a cada iteração do loop.

Já o const é usado para declarar variáveis imutáveis, ou seja, variáveis cujo valor não pode ser reatribuído. No código, estamos usando const tecla para criar uma variável que mantém a mesma referência ao elemento da lista listaDeTeclas durante a execução do loop. No entanto, o valor do elemento em si (o objeto referenciado por tecla) pode ser modificado, o que é diferente de reatribuir tecla a outro objeto.

Neste contexto, o tecla mantém a mesma referência ao elemento da lista listaDeTeclas, mas o objeto em si (representado pelo tecla) não é reatribuído. A cada iteração do loop, o objeto referenciado por tecla muda para o próximo elemento da lista listaDeTeclas, mas a própria variável tecla ainda é uma constante.

Portanto, em resumo, a diferença entre let contador e const tecla é que contador é uma variável que pode ser reatribuída a um novo valor a cada iteração, enquanto tecla é uma constante que mantém a mesma referência ao objeto da lista, mas o objeto em si pode ser modificado. Isso não torna tecla uma variável mutável, apenas permite que o objeto referenciado por tecla seja modificado, desde que a referência da variável tecla não seja reatribuída.

Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓

Bruno,

Achei uma explicação legal lá na W3Schools, vou passar o link para você, mas antes vou eu mesmo tentar explicar.

A palavra-chave "CONST" é um pouco dúbia. Ela NÃO é uma constante como no C#. Ela define uma referência constante a um valor.

Por causa disso, você NÃO pode:

  • Reatribuir um valor constante
  • Reatribuir uma matriz constante
  • Reatribuir um objeto constante

Mas você PODE:

  • Alterar os elementos da matriz constante
  • Alterar as propriedades do objeto constante

Veja que no caso destas variáveis complexas estamos alterando o 'interno' da variável e não a variável propriamente dita.

Abaixo alguns links interessantes que recomendo que você veja:

===============================================================

JavaScript Const

ERROR:

const PI = 3.141592653589793;
PI = 3.14;      // This will give an error
PI = PI + 10;   // This will also give an error

https://www.w3schools.com/JS/js_const.asp

===============================================================

DEPURANDO VARIÁVEIS COMPLEXAS NO JAVASCRIPT COM CONSOLE.TABLE

by Fabrizio Gianfratti Manes

Vamos conhecer um truque não padrão do JavaScript que ajuda e muito na depuração de variáveis complexas – o console.table.

Como exemplo, vamos imaginar que temos um vetor de objetos complexos:

var vetorObjetos = [
    {
        nome: "Paulo",
        idade: 30
    },
    {
        nome: "Cecilia",
        idade: 55
    }
];

...

https://gianfratti.com/index.php/depurando-variaveis-complexas-no-javascript-com-console-table/

===============================================================

Tipos de variáveis em JavaScript

Os tipos de variáveis em JS são classificados em:

  • Strings — Uma String nada mais é que texto puro.
  • Numbers — São os números, seja eles integer, float, double etc.
  • Booleans — São os operadores booleanos (true ou false)
  • Arrays — É uma estrutura de dado para armazenar uma coleção de valores, sendo eles de qualquer tipo.
  • Objects — Conjunto de atributos aninhados a uma variável denomina-se um objeto.
  • Functions — Em JavaScript é possível declarar uma variável como uma função, podendo fazer operações e retornando o valor para a variável de declaração. Obs: muito utilizado no paradigma de programação funcional.

...

https://medium.com/trainingcenter/entendendo-os-tipos-e-variaveis-em-javascript-f9753b4c7b61

===============================================================

O QUE SÃO VARIÁVEIS JAVASCRIPT, PARA QUE SERVEM E COMO CRIAR?

Por Ugo Roveda - 25/06/21 - 9 min de leitura

Como Javascript é uma linguagem fracamente tipada, ( isto é, não força o programador a declarar qual o tipo de dado que a variável receberá em tempo de desenvolvimento ) erros como este somente aparecem em tempo de execução, pois o programador não será alertado quando efetuar operações com tipos de dados não compatíveis.

  • Números
  • Strings
  • Booleans (booleanos)
  • Arrays
  • Objetos
  • Functions

...

https://kenzie.com.br/blog/variaveis-javascript/

===============================================================

Como definir constantes em C#

Artigo - 06/04/2023

...

https://learn.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/how-to-define-constants

===============================================================

Espero ter ajudado e se ajudei e solucionou sua dúvida, por favor, não esqueça de fechar o tópico e me pontuar... obrigado!

[]'s,

Fabio I.