protected nome: string;
protected saldo: number = JSON.parse(localStorage.getItem("saldo")) || 0;
private transacoes: Transacao[] = JSON.parse(localStorage.getItem("transacoes"), (key: string, value: any) => {
if (key === "data") {
return new Date(value);
}
return value;
}) || [];
constructor(nome: string) {
this.nome = nome;
}
public getTitular() {
return this.nome;
}
private debitar(valor: number): void {
if (valor <= 0) {
throw new Error("O valor a ser debitado deve ser maior que zero!");
}
if (valor > this.saldo) {
throw new Error("Saldo insuficiente!");
}
this.saldo -= valor;
localStorage.setItem("saldo", this.saldo.toString());
}
private depositar(valor: number): void {
if (valor <= 0) {
throw new Error("O valor a ser depositado deve ser maior que zero!");
}
this.saldo += valor;
localStorage.setItem("saldo", this.saldo.toString());
}