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

Adição indesejada

Na linha 42 do meu código como teste inseri o sinal de subtração na operação sacar, e ouve a adição de valor, porque isso ocorre sendo, a função sacar era pra realizar a operação de subtração ?

class cliente{
    nome;
    cpf;
    rg;
}


class ContaCorrente{
    conta; 
    agencia;
    saldo;
    sacar(valor){
        if(this.saldo >= valor){
            this.saldo -= valor;
        }

    }

    depositar(valor){
        if(valor >0){ 
            this.saldo += valor;
        }
    }
}



const cliente1 = new cliente();
cliente1.nome = "Mateus de souza soares";
cliente1.cpf  = "12551545124";
cliente1.rg   = "15442151215" ;


const ContaCorrenteRicardo = new ContaCorrente();
ContaCorrenteRicardo.saldo=0;
ContaCorrenteRicardo.agencia="8220";
ContaCorrenteRicardo.conta="36664";


ContaCorrenteRicardo.depositar(150);
ContaCorrenteRicardo.sacar(75);
ContaCorrenteRicardo.sacar(-56) // adição acontece aq //

console.log(ContaCorrenteRicardo);
1 resposta
solução!

O -56 satifaz a condição já que ele é maior que o saldo, mas como é um valor negativo ele vai acabar somando, já que - com - fica +: 75 - (-56) fica 75+56 = 131. Uma das forma de validar isso é verifica no if se valor passado é positivo: if(valor > 0 && this.saldo >= valor)