Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

duvida

porque o instrutor não declarou a variável nome e quantidade com o .value? não iria ajudar na hr de passar o código? segue o codigo:

const nome = evento.target.elements["nome"]
const quantidade = evento.target.elements["quantidade"]

criaElemento(nome.value, quantidade.value)

// zerando o formulário após envia-lo
nome.value = ""
quantidade.value = ""
1 resposta
solução!

Olá Raí! Tudo bem?

Primeiramente, agradeço por compartilhar sua dúvida conosco. Vamos esclarecer sua pergunta de forma educada, clara e respeitosa.

No código que você apresentou, o instrutor não declarou as variáveis nome e quantidade com o .value porque essas variáveis estão sendo atribuídas aos elementos do formulário, e não aos valores em si. O .value é utilizado para obter o valor inserido pelo usuário nos campos de entrada (input) do formulário.

Vamos analisar o trecho do código em questão:

const nome = evento.target.elements["nome"]
const quantidade = evento.target.elements["quantidade"]

Neste código, o evento está sendo capturado e, através do evento.target.elements, está acessando os elementos do formulário pelo seu atributo name. É importante destacar que, ao fazer isso, as variáveis nome e quantidade estão armazenando uma referência aos elementos do formulário, não os valores contidos nesses elementos.

Por exemplo, se você tem um formulário HTML como este:

<form>
  <input type="text" name="nome" value="João">
  <input type="number" name="quantidade" value="5">
  <button type="submit">Enviar</button>
</form>

Ao realizar a seleção dos elementos pelo name utilizando evento.target.elements, o objeto nome não será "João" e o objeto quantidade não será o número "5". Essas variáveis irão conter referências para os elementos HTML correspondentes. Para obter os valores reais desses campos, você precisará utilizar o .value posteriormente, como é feito no trecho do código abaixo:

criaElemento(nome.value, quantidade.value)

Aqui, nome.value e quantidade.value estão sendo utilizados para passar os valores inseridos pelo usuário no momento do envio do formulário (quando o botão "Enviar" é clicado) para a função criaElemento. Essa função provavelmente será responsável por manipular esses valores, seja para exibi-los na página, armazená-los em algum local ou realizar alguma outra ação com eles.

Em seguida, no código abaixo, temos o trecho que zera o formulário após enviá-lo:

nome.value = ""
quantidade.value = ""

Aqui, estamos utilizando o .value novamente para atribuir uma string vazia às propriedades .value dos elementos nome e quantidade. Isso resulta em limpar os campos de entrada do formulário após o envio, deixando-os prontos para uma nova interação do usuário.

Em resumo, o motivo pelo qual o instrutor não declarou as variáveis nome e quantidade com o .value é porque essas variáveis estão sendo usadas para referenciar os elementos do formulário, enquanto o .value é usado para obter os valores desses elementos.

Espero que esta explicação tenha sido clara e tenha esclarecido sua dúvida.

Se você tiver mais perguntas ou precisar de mais detalhes, não hesite em perguntar.

Abraços e Bons estudos!

Caso este post tenha lhe ajudado, por favor marque ele como solução! ✓