3
respuestas

Constructores

CuentaCorriente.js :

// clase cuenta corriente ------------------>

export class cuentaCorriente {

  #usuario;
  numero;
  #saldo;
  agencia;

  /**
 * @param {import("./Cliente").cliente} valor
 */
  set usuario(valor) {
    if(valor instanceof cliente)
    this.#usuario = valor;
  };

  get usuario() {
    return this.#usuario;
  };

  constructor (usuario, numero, agencia) {
      this.#usuario = usuario;
      this.numero = numero;
      this.agencia = agencia;
      this.#saldo = 0;
  };

  deposito(importe) {
    if(importe > 0) {
    this.#saldo += importe;
    parseFloat(this.#saldo).toFixed(2);
    console.log("**Depósito realizado con éxito**" + "por $" + importe );
    console.log("**Nuevo saldo: $" + this.#saldo);
    return (this.#saldo).toFixed(2);
    } else {
      console.log(`Operación no válida.`);
      parseFloat(this.#saldo).toFixed(2);
      return (this.#saldo).toFixed(2);
    };
  };

  retiro(importe) {
    if (importe <= this.#saldo) {
      this.#saldo -= importe;
      parseFloat(this.#saldo).toFixed(2);
      console.log("**Retiro realizado con éxito**" + "por $" + importe );
      console.log("**Nuevo saldo: $" + this.#saldo);
      return (this.#saldo).toFixed(2);
    } else {
      console.log(`Operación no válida.`);
      parseFloat(this.#saldo).toFixed(2);
      return (this.#saldo).toFixed(2);

    };

  };

  verSaldo() {
    return (this.#saldo).toFixed(2);
  };

  transferirParaCuenta(importe, cuentaDestino) {
      this.retiro(importe);
      cuentaDestino.deposito(importe);
      console.log("**Transferencia realizada con éxito**" + "por $" + this.#saldo );
      console.log("**Nuevo saldo: $" + this.#saldo);
  };  
};
3 respuestas

Index.js :

// IMPORTACIÓN DE CLASES ---------------------->
// movimientos de cuenta Laura ----------->

import {cliente} from "./Cliente.js";
import {cuentaCorriente} from "./CuentaCorriente.js";

// variables *** //

const usuario = new cliente("Laura", "850690845005", "2115");
const usuario2 = new cliente("Dana", "099433671834", "5593");

const cuentaDeLaura = new cuentaCorriente(usuario, "58280270", "022");
const cuentaDeDana = new cuentaCorriente(usuario2, "84250304", "028");


// cliente usuario Laura ----------------------->
let saldo = cuentaDeLaura.verSaldo();
console.log("El saldo actual es: " + "$ " + saldo + " MXN");

saldo = cuentaDeLaura.deposito(1000);
console.log("El saldo actual es: " + "$ " + saldo + " MXN");

saldo = cuentaDeLaura.retiro(100);
console.log("El saldo actual es: " + "$ " + saldo + " MXN");

saldo = cuentaDeLaura.deposito(5.498);
saldo = cuentaDeLaura.verSaldo();

console.log("El saldo actual de " + usuario.nombreCliente + " es de: " + "$" + cuentaDeLaura.verSaldo() + "MXN");


// nuevo cliente 2 ------------------------->
if(cuentaDeDana.cliente) {
    console.log(cuentaDeDana.cliente)
} else {
    console.log(cuentaDeDana);
};

saldo = cuentaDeDana.deposito(103475.756);
saldo = cuentaDeDana.retiro(3475.756);
saldo = cuentaDeDana.retiro(99999.99);

// resumen cuentas ------------------------------->
console.log("Cuenta de Laura: ", cuentaDeLaura);
console.log("Cuenta de Laura: ", cuentaDeLaura.verSaldo());
console.log("Cuenta de Dana: ", cuentaDeDana);
console.log("Cuenta de Dana: ", cuentaDeDana.verSaldo());

// let paramValor = 100;

// console.log("Parámetro 'Valor'", paramValor);
// cuentaDeLaura.transferirParaCuenta(paramValor, cuentaDeDana);
// console.log("Parámetro 'Valor'", paramValor);

// console.log("el saldo actual de " + usuario2.nombreCliente + " es de: " + "$" + cuentaDeDana.verSaldo() + "MXN");
// console.log("El saldo actual de " + usuario.nombreCliente + " es de: " + "$" + cuentaDeLaura.verSaldo() + "MXN");

console.log(cuentaDeLaura.usuario);
console.log(cuentaDeDana.usuario);

Cliente.js :

// clase cliente ----------------->

export class cliente {
    nombreCliente;
    ocrCliente;
    nipCliente;
    // numCuenta;
    // saldoCuenta;

    constructor(nombreCliente, ocrCliente, nipCliente) {
      this.nombreCliente = nombreCliente;
      this.ocrCliente = ocrCliente;
      this.nipCliente = nipCliente;
    };
  };

Hola Roberto, espero estés muy bien.

Felicitaciones por tu aprendizaje. Estamos priorizando el foro para postear dudas, así optimizamos el tiempo de respuesta para ustedes.

Para no dejar de compartir los códigos, actividades y ejercicios que realizas, creamos un canal en Discord (#compartatucodigo) donde puedes compartirlos, dar y sugerir mejoras con el resto de tus compañeros.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios