Olá não consigo obter o mesmo resultado da aula, uma vez que recebo a resposta "file:///D:/Diego/cursos/Alura/Javascript/Curso-JavaScript%20programando%20a%20Orienta%C3%A7%C3%A3o%20a%20Objetos/ContaCorrente.js:26 conta.depositar(valorSacado); ^
ReferenceError: conta is not defined at contaCorrente.transferir (file:///D:/Diego/cursos/Alura/Javascript/Curso-JavaScript%20programando%20a%20Orienta%C3%A7%C3%A3o%20a%20Objetos/ContaCorrente.js:26:9)"
Segue o código index.js
import {Cliente} from "./Cliente.js"
import {contaCorrente} from "./ContaCorrente.js"
const cliente1 = new Cliente();
cliente1.nome = "Ricardo";
cliente1.cpf = 11122233309;
// cliente1.agencia = 1001;
// cliente1.saldo = 0;
const cliente2 = new Cliente();
cliente2.nome = "Alice";
cliente2.cpf = 88822233309;
// cliente2.agencia = 1001;
// cliente2.saldo = 0;
const cliente3 = new Cliente();
cliente3.nome = "João";
cliente3.cpf = 99922233309;
// cliente3.saldo = 0;
// cliente3.agencia = 1001;
const contaCorrenteRicardo = new contaCorrente();
contaCorrenteRicardo.agencia = 1001;
contaCorrenteRicardo.cliente = cliente1;
// contaCorrenteRicardo.saldo = 0;
// console.log(contaCorrenteRicardo.saldo);
// contaCorrenteRicardo.#saldo = 10000;
// console.log(contaCorrenteRicardo.saldo);
// let valorSacado = 50;
// contaCorrenteRicardo.sacar(10);
// contaCorrenteRicardo.depositar(50);
// const valorSacado = contaCorrenteRicardo.sacar(10);
const conta2 = new contaCorrente();
conta2.cliente = cliente2;
conta2.agencia = 104;
contaCorrenteRicardo.depositar(500);
contaCorrenteRicardo.transferir(200, conta2);
console.log(conta2);
ContaCorrente.js
export class contaCorrente{
agencia;
cliente;
_saldo = 0;
sacar(valor){
if (this._saldo >= valor){ // # torna atributo privado, e não editavel fora da classe ou visivel, _ serve tambem para indicar atributo privado
this._saldo -= valor;
console.log(this._saldo);
return valor;
}
}
depositar(valor){
if (valor >= 0){
this._saldo += valor;
console.log(this._saldo);
}else{
console.log("Valor inválido");
}
}
transferir(valor){
const valorSacado = this.sacar(valor);
conta.depositar(valorSacado);
}
}