Minha Classe está assim, no arquivo ContaCorrent.js:
import { Cliente } from "./Cliente.js"
export class ContaCorrente{
static numeroDeContas = 0
set cliente(novoValor){
if(novoValor instanceof Cliente){
this.cliente = novoValor
}
}
get cliente(){
return this.cliente
}
get saldo(){
return this._saldo
}
constructor(cliente, agencia){
this.cliente = cliente
this.agencia = agencia
this._saldo = 0
ContaCorrente.numeroDeContas += 1
}
sacar(valor){
if(this._saldo < valor){
return
}
this._saldo -= valor
}
depositar(valor){
if(valor < 0) return
this._saldo += valor
console.log(this._saldo)
}
tranferir(valor, conta){
const valorSacado = this.sacar(valor)
conta.depositar(valorSacado)
}
}
Já o arquivo index.js está assim:
import { Cliente } from "./Cliente.js"
import { ContaCorrente } from "./ContaCorrente.js"
import { ContaPoupanca } from "./ContaPoupanca.js"
const cliente1 = new Cliente('Ricardo', 12345678912)
const contaCorrenteRicardo = new ContaCorrente(cliente1, 1001)
const contaPoupanca = new ContaPoupanca(33, cliente1, 1001)
contaCorrenteRicardo.depositar(500)
console.log(contaPoupanca)
Estou querendo visualizar o objeto "contaPoupanca" mas quando reproduzo o código, aponta o erro:
file:///C:/Users/natan/OneDrive/Documentos/Alura/Projeto/OO%20JS%20-%20Heranca/ContaCorrente.js:9 this.cliente = novoValor ^
RangeError: Maximum call stack size exceeded