Index.js
import {Cliente} from "./Cliente.js";
import {ContaCorrente} from "./ContaCorrente.js";
const cliente1 = new Cliente();
cliente1.nome = "Ricardo";
cliente1.cpf = "11122233309";
const cliente2 = new Cliente();
cliente2.nome = "Alice";
cliente2.cpf = "88822233309";
const contaCorrenteRicardo = new ContaCorrente();
contaCorrenteRicardo.agencia = 1001;
contaCorrenteRicardo.cliente = cliente1;
const conta1 = contaCorrenteRicardo;
const conta2 = new ContaCorrente();
conta2.cliente = cliente2;
conta2.agencia = 102;
contaCorrenteRicardo.depositar(500);
contaCorrenteRicardo.transferir(100, conta2);
console.log(conta1);
console.log(conta2);
ContaCorrente.js
export class ContaCorrente {
agencia;
cliente;
// #saldo = 0 https://github.com/tc39/proposal-class-fields#private-fields
_saldo = 0;
sacar(valor){
if(this._saldo >= valor){
this._saldo -= valor;
return console.log(`Valor sacado: ${valor}\n`);
} else if(this._saldo <= valor){
console.log("erro");
}
}
depositar(valor){
if(valor > 0){
this._saldo += valor;
}
}
transferir(valor, conta){
const valorSacado = this.sacar(valor);
conta.depositar(valorSacado);
}
}