1
resposta

Projeto Carinho de Compras

Boa noite!

Consegui finalizar o projeto do carrinho de compras, mas ainda tenho muitas dúvidas e sinto-me um pouco perdida em relação a como organizar minhas ideias e implementá-las no código. Para iniciar o projeto, preciso ver o começo do processo feito por vocês. Depois, consigo realizar algumas partes sozinha.

Fiz dessa forma e também realizei algumas alterações.

somaVariaveis();
let primeiroNome = ''
limpar();
dadosCadrastro();
titulo (`Carrinho de compras de <span class="texto-azul">${primeiroNome}</span>`);
let totalGeral = 0;

// Muda informação do titulo do carrinho de compras
function titulo(novoTitulo) {
    let tituloPagina = document.querySelector('.titulo');
    tituloPagina.innerHTML = novoTitulo;
}

// Crie um formulário simples
function dadosCadrastro() {
    primeiroNome = prompt('Qual é se primeiro nome? ');
    let sobrenome = prompt('Digite seu sobrenome: ');
    alert(`Prezado(a) ${primeiroNome} sejá bem-vindo ao site de compras. Fique a vontade`);

}


function adicionar() {
// recuperando valores, nome do produto, quantidade e valor.
let produto = document.getElementById('produto').value;
let nomeProduto = produto.split('-')[0];
let valorUnitario = produto.split('R$')[1];
let quantidade = document.getElementById('quantidade').value;
//Adicione validações no código para garantir que o usuário só consiga adicionar produtos validos
if (quantidade <= 0) {
    alert(`O valor deve ser maior que ${quantidade}`);
    return
}

// Calcula o preço subtotal
let preco = quantidade * valorUnitario;
console.log(`O valor total é ${preco}`);
let carrinho = document.getElementById('lista-produtos');
carrinho.innerHTML = carrinho.innerHTML + `<section class="carrinho__produtos__produto">
          <span class="texto-azul">${quantidade}</span>${nomeProduto}<span class="texto-azul">R$1400</span>
        </section>`;
// Atualizar o valor total 
totalGeral = totalGeral + preco;
let campoTotal = document.getElementById('valor-total');
campoTotal.textContent = `R$ ${totalGeral}`;
document.getElementById('quantidade').value = ''; 
let totalSelecionado = confirm(`O total dos produtos selecionados foram ${quantidade}`);

}

function limpar() {
    document.getElementById('lista-produtos').innerHTML = '';
    document.getElementById('valor-total').textContent = 'R$ 0'; 

}

// Soma de duas variáveis numéricas
function somaVariaveis() {
    let num1 = parseInt(prompt('Digite um numero:'));
    let num2 = parseInt(prompt('Digite outro número: '));

    let decisao = prompt(`Você prefere que os valores ${num1} e ${num2} sejam somados ou subtraidos? `);
    if(decisao === 'somar'){
        alert(`O resultado da soma é: ${num1 + num2}`);
    }else{
    if(decisao === "subtrair") {
        alert(`O resultado da subtração é ${num1 - num2}`);
    }else {
        alert('Opção invalida. Por favor escolha entre somar ou subtrair');
    }
 }
}
1 resposta

Olá, Sara. Tudo bem?

Muito obrigado por compartilhar o seu código aqui com a gente. Parabéns pelo trabalho. Continue com essa dedicação.

Ótimo como você estruturou as funções para organizar o carrinho de compras. A validação na função adicionar() ajuda a evitar inserções inválidas, o que é um bom hábito. O código está correto.

Uma melhoria interessante seria garantir que o valor unitário do produto seja convertido corretamente para número antes do cálculo. Veja este exemplo:


let valorUnitario = parseFloat(produto.split('R$')[1].replace(',', '.'));

Isso evita erros ao multiplicar valores que podem estar no formato de string.

Conte com o apoio do Fórum. Bons estudos.