1
resposta

Faça como eu fiz: realizando cálculos

let produto = document.getElementById('produto').value;
let nomeProduto = produto.split('-')[0];
let valorUnitario = produto.split('R$')[1];
let quantidade = document.getElementById('quantidade');

alert(nomeProduto);
alert(quantidade.value);

let preco = quantidade.value * valorUnitario;
alert(preco);
1 resposta

Olá Harlen! Tudo joia?

Seu código está quase lá, mas há alguns ajustes que podem ser feitos para garantir que tudo funcione corretamente. Vamos ver:

  1. Separação do nome do produto e do valor unitário: Você está no caminho certo ao usar split(), mas precisamos garantir que estamos extraindo corretamente o valor numérico do preço.

  2. Conversão de tipos: Quando você obtém valores de inputs, eles são do tipo string. Precisamos converter quantidade.value e valorUnitario para números antes de realizar a multiplicação.

Aqui está um exemplo ajustado do seu código:

let produto = document.getElementById('produto').value;
let nomeProduto = produto.split('-')[0].trim();
let valorUnitario = parseFloat(produto.split('R$')[1].trim());
let quantidade = document.getElementById('quantidade').value;

alert(nomeProduto);
alert(quantidade);

let preco = parseInt(quantidade) * valorUnitario;
alert(preco);

Explicações dos ajustes:

  1. Trim: Usei trim() para remover quaisquer espaços em branco extras que possam estar ao redor do nome do produto e do valor unitário.
  2. parseFloat e parseInt: Usei parseFloat para converter o valor unitário para um número decimal e parseInt para converter a quantidade para um número inteiro.

Bons estudos!