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

Meu método sacar() não esta funcionando.

Quando chamo contaCorrente1.sacar(50); , esse valor nao está sendo retirado da conta corrente.

import { ContaPoupanca } from "./ContaPoupanca.js";
import { ContaCorrente } from "./ContaCorrente.js";
import { Cliente } from "./Cliente.js";

const cliente1 = new Cliente("Isabella", 11122233344); //novo cliente

const contaCorrente1 = new ContaCorrente(0, cliente1, 1001); //nova conta corrente
const contaPoupanca1 = new ContaPoupanca(2000, cliente1, 1001); //nova conta poupança


contaCorrente1.depositar(500); //testando transações
contaCorrente1.sacar(50); //testando transações


console.log(contaPoupanca1);
console.log(contaCorrente1);
export class Conta {
    //------------------------------------------------
    // Definindo propriedades já no construtor
    constructor(saldoInicial, cliente, agencia){
        this.saldo = saldoInicial;
        this.cliente = cliente;
        this.agencia = agencia;
    }
    //------------------------------------------------
    // Métodos:
    sacar(valor){ // ---- parte do código de "sacar" que mudará, de acordo com a "classe filho".
        let taxa = 1;
        return this._sacar(valor, taxa);
    }

    // método privado (_) ---- codigo geral do "sacar"
    _sacar(valor, taxa){
        const valorSacado = taxa * valor;
        if(this.saldo >= valorSacado){
            this.saldo -= valorSacado;
            return valorSacado;
        }
        return 0;
    }

    depositar(valor){
        if(valor <= 0){
            return; // se valor for negativo, não faz nada;
        } 
        this.saldo += valor;           
    }

    tranferir(valor, conta){
        const valorSacado = this.sacar(valor);
        conta.depositar(valorSacado);
    }
}
import { Conta } from "./Conta.js";

export class ContaCorrente extends Conta{ //HERANÇA: Pega tudo de "Conta"
    //------------------------------------------------
    // Contabilizar contas correntes
    static numeroDeContasCorrentes = 0;
    //------------------------------------------------
    // Definindo propriedades no construtor
    constructor(cliente, agencia){
        super (0, cliente, agencia); //Como pegar as propriedades da "classe mãe" 
        ContaCorrente.numeroDeContasCorrentes += 1;
    }

    sacar(valor){
        let taxa = 1.1;
        return this._sacar();
    }
}
1 resposta
solução!

Já descobri meu próprio erro... o valor e a taxa esta faltando no "sacar" da conta corrente... vou deixar o post caso alguem tenha o mesmo problema xD

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software