Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Saldo undefine

Tengo un problema con el codigo, si lo hago como lo muestra el profe en el video al ejecutar me dice que el saldo es undefined, necesito llamar la funcion verSaldo() cada vez que hago deposito o retiro para porder ver el saldo.

class CuentaCorriente{
    numeroCuenta;
    #saldoCuenta;
    agencia;
    constructor(){
        this.#saldoCuenta = 0;
        this.numeroCuenta = "";
        this.agencia = "";
    }
    depositoEnCuenta (valor){
        if(valor > 0)
            this.#saldoCuenta += valor;
    }
    retiroCuenta (valor){
        if(valor <= this.#saldoCuenta)
            this.#saldoCuenta -= valor;
    }
    verSaldo (){
        return this.#saldoCuenta;
    }
}

const cuentaJonaCorona = new CuentaCorriente();
console.log(cuentaJonaCorona);
//jonaCorona.#saldoCuenta = 0;

let saldo = cuentaJonaCorona.verSaldo();
console.log("El saldo de la cuenta es " + saldo);

saldo = cuentaJonaCorona.depositoEnCuenta(100);
console.log("El saldo de la cuenta es " + saldo);

saldo = cuentaJonaCorona.retiroCuenta(100);
console.log("El saldo de la cuenta es " + saldo);

saldo = cuentaJonaCorona.depositoEnCuenta(50);
console.log("El saldo de la cuenta es " + saldo);

El resutado es: CuentaCorriente { numeroCuenta: '', agencia: '' } El saldo de la cuenta es 0 El saldo de la cuenta es undefined El saldo de la cuenta es undefined El saldo de la cuenta es undefined

1 respuesta
solución!

Hola Jonathan. De la forma como estructuramos el código debes llamar verSaldo, cuando deseas mostrarlo en la consola.

Ahora bien de la forma que entiendo deseas usar tu código, puede hacer este cambio en los métodos de la clase:

depositoEnCuenta (valor){
    if(valor > 0)
        this.#saldoCuenta += valor;
    return this.#saldoCuenta;
}
retiroCuenta (valor){
    if(valor <= this.#saldoCuenta)
        this.#saldoCuenta -= valor;
    return this.#saldoCuenta;
}

De esta forma cada vez que haces un retiro o un depósito recibes el saldo actualizado como retorno de la llamada a la función, esa es una mejora interesante que puedes probar.

Espero haberte ayudado.