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:
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.
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:
- 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. - 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!