Olá. Estou com um pequeno problema na hora de imprimir o número de contas, já verifiquei e segue exatamente o mesmo nome em todos os casos, mesmo assim retorna "undefined" Segue o código para analise:
index.js :
import {Cliente} from "./Cliente.js"
import {ContaCorrente} from "./ContaCorrente.js"
const cliente1 = new Cliente("Renan", "11511411688");
//cliente1.nome = "Renan";
//cliente1.cpf = "11511411688";
//cliente1.agência = 1001;
//cliente1.saldo = 0.0;
const cliente2 = new Cliente("Luna", "123444567710");
//cliente2.nome = "Luna";
//cliente2.cpf = "123444567710";
//cliente2.agência = 1001;
//cliente2.saldo = 0.0;
//console.log(cliente1);
//console.log(cliente2);
const ContaCorrente1 = new ContaCorrente(cliente1, 1001);
const ContaCorrente2 = new ContaCorrente(cliente2, 1002);
ContaCorrente1.depositar(200);
const valorSacado = ContaCorrente1.sacar(10);
console.log(valorSacado);
console.log(ContaCorrente1.saldo);
ContaCorrente1.transferir(20,ContaCorrente2);
ContaCorrente1.transferir(20,ContaCorrente2);
//console.log(ContaCorrente1);
console.log(ContaCorrente1.saldo);
ContaCorrente1.transferir(100,ContaCorrente2);
console.log(ContaCorrente1.saldo);
console.log(ContaCorrente1.cliente);
//console.log(ContaCorrente2);
console.log(ContaCorrente2.saldo);
console.log(ContaCorrente2.cliente);
console.log(ContaCorrente2.numeroDeContas);
Cliente.js
export class Cliente{
nome;
#cpf;
get cpf(){
return this.#cpf;
}
constructor(nome,cpf){
this.nome = nome;
this.#cpf = cpf;
}
}
ContaCorrente.js:
import { Cliente } from "./Cliente.js";
export class ContaCorrente{
static numeroDeContas = 0;
agencia;
#cliente;
#saldo = 0;
set cliente(novoCliente){
if(novoCliente instanceof Cliente)
{
this.#cliente = novoCliente;
}
}
get cliente(){
return this.#cliente;
}
get saldo(){
return this.#saldo;
}
constructor(cliente, agencia){
this.cliente = cliente;
this.agencia = agencia;
ContaCorrente.numeroDeContas +=1;
//console.log("Conta Criada");
}
sacar(valor){
if(this.#saldo>=valor){
this.#saldo -= valor;
console.log("Sacando");
}
else{
console.log("Saldo insuficiente");
}
console.log(this.#saldo);
return this.#saldo;
}
depositar(valor){
if(valor<=0){
return;
}
else{
console.log("Depositado");
this.#saldo += valor;
}
return this.#saldo;
}
transferir(valor, conta){
this.sacar(valor);
conta.depositar(valor);
}
}