Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Enviar valores para dentro do cliente

Seguindo o código dado em aula a seguir:

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

const cliente1 = new Cliente();
cliente1.nome= "Ricardo";
cliente1.cpf= 11221312321;

const cliente2 =new Cliente();
cliente2.nome = "Alice";
cliente2.cpf = 82545645715;

const contaCorrenteRicardo = new ContaCorrente();
contaCorrenteRicardo.agencia =1001;
contaCorrenteRicardo.cliente = cliente1;
contaCorrenteRicardo.depositar(500);

const conta2 = new ContaCorrente();
conta2.cliente = cliente2;
conta2.agencia = 102;

contaCorrenteRicardo.transferir(200,conta2);
console.log(conta2);
console.log(contaCorrenteRicardo);

Estou tendo como resultado :

Debugger listening on ws://127.0.0.1:18200/10375274-d066-4d1a-b723-6c919c693e46 For help, see: https://nodejs.org/en/docs/inspector Debugger attached. Cliente Cliente.js:5 ContaCorrente {agencia: 102, cliente: Cliente, _saldo: NaN} index.js:22 ContaCorrente {agencia: 1001, cliente: Cliente, _saldo: 0}

Ou seja os parametros não estao sendo passados, sendo que na classe Cliente coloquei

export class Cliente{
    nome;
    cpf;
 }
console.log("Cliente");

e na classe conta corrente:

export class ContaCorrente{
    agencia;
    cliente;
    _saldo = 0;

    sacar(valor){
        if(this._saldo >= valor){
            this._saldo -= valor;
            return valor;
            console.log("sacando");
        }
    }

    depositar(valor){
        if(valor>0) return;
        this._saldo+=valor;

    }

    transferir(valor, conta){
        const valorSacado = this.sacar(valor);
        conta.depositar(valorSacado);
    }
}

não sei se isso tem haver com o pacote no qual esta a seguir:

{
  "name": "bytebank",
  "version": "1.0.0",
  "description": "Projeto do bytebank para seus clientes",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "type": "module"
}
2 respostas
solução!

Oi, Lucas, tudo bem?

No seu método depositar, está fazendo a verificação de valor de forma incorreta. A verificação deve ser if(valor <= 0), caso valor não seja menor ou igual a zero, adicione em saldo.

Fazendo a correção, saldo é exibido corretamente.

Espero ter te ajudado!

puts, não tinha visto haha,muito obrigado!