JavaScript - Crear Objetos para almacenar datos o no?

 
Vista:
sin imagen de perfil
Val: 17
Ha aumentado su posición en 81 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Crear Objetos para almacenar datos o no?

Publicado por Eli (6 intervenciones) el 17/04/2021 18:53:17
Buenas, estoy realizando una pequeña aplicacion para registra tareas, esto solo es para practicar y hacerme mas distro en esto de la programacion.

Bien lo que estoy haciendo es eso.

Un formulario con dos campos y un botón, al presionar este boton agregare lo que estaen los campos a un array.

Bien, este array van a ser puros objetos formados por los datos introducidos en el formulario.

Anteriormente en una practica anterior realice algo así:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if(btnRegistroDeudor) {
    btnRegistroDeudor.addEventListener('click', () => {
        let nombreDeudor = document.querySelector('#nombreDeudor').value;
        let cedulaDeudor = document.querySelector('#cedulaDeudor').value;
        let listaPedido = arrayProdPedidos;
        let deudaBs = document.querySelector('#total-deuda-bs').value;
        let deudaDivisa = document.querySelector('#total-deuda-divisa').value;
 
        function Deudor(nombre, cedula, pedido, deudaBolivares, deudaDivisas){
           this.nombre = nombre;
           this.cedula = cedula;
           this.peddido = pedido;
           this.deudaBolivares = deudaBolivares;
           this.deudaDivisas = deudaDivisas;
        }
 
        let nuevoDeudor = new Deudor(nombreDeudor, cedulaDeudor, listaPedido, deudaBs, deudaDivisa);
 
        agregarDeudorArray(nuevoDeudor);
    });
}

O sea, estoy tirando un poco mas hacia la onda de POO, porque quiero aprender eso, en JavaScript ya se que se puede usar la notación de clases 'Class' y un constructor, pero como dije anteriormente quiero aprender bien las bases de este lenguaje.

en el registro de tareas hice esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
btnAdd.addEventListener('click', (e) => {
    e.preventDefault();
    let tarea = document.querySelector('#nombre').value;
    let desc = document.querySelector('#desc').value;
 
    let datos = {
      tarea: tarea,
      descripcion: desc
    };
 
    listatareas.push(datos);
 
  });

Donde también agrego cada vez que presione el botón los datos actuales al array 'listatareas' en forma de un objeto.

entonces si puedo hacer esto asi, por que razón debería usar la anterior?, o de que me sirve?, o para que se usa?

O díganme si pueden por favor, si mi código (aunque sea así de básico) es muy malo, y debería hacerlo de otra manera.

Muchas gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.510
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Crear Objetos para almacenar datos o no?

Publicado por joel (893 intervenciones) el 18/04/2021 09:05:19
Hola Eli, voy a intentar comentarte... si la finalidad de tu código es simplemente guardar los datos de la tarea en un array, mucho mejor de la segunda manera, mas optimo y menor código.
Ahora bien, si sobre esa lista de tareas que tienes guardada en un array, quieres guardarlas por diferentes tipos, vincularla con las listas de otros usuarios, haber calculos, y cualquier otra cosa que se te ocurre, veras que es mucho mejor trabajar con objetos, mucho mas claro y sencillo.

eso sin contar que ese código es reutilizable de una forma mas sencilla.

No se si te he ayudado en algo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 17
Ha aumentado su posición en 81 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Crear Objetos para almacenar datos o no?

Publicado por Eli (6 intervenciones) el 18/04/2021 18:21:18
Hola, muchas gracias por tu respuesta.

Si me ayuda, y si pienso hacer otras cosas con esa lista de tareas, lo primero es meterla al localStorege y sacarla de ahí también, el proceso seria.

Eliminar la tarea cumplida, cambiarle fecha de ejecución, modificar los datos, y demás. así que bueno muchas gracias, solo quería saber si en un principio quería usar la segunda forma para algo sencillo estaría mal.

Pasa que hay tantas maneras de hacer esto.

Funciones fabrica, Función Constructora, Class, Object.create, que capaz alguna son la misma en algún punto, que hay que tratar de no usar el "this", y con eso del "new" igual, es abrumador. pero bueno gracias por responder.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.510
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Crear Objetos para almacenar datos o no?

Publicado por joel (893 intervenciones) el 19/04/2021 07:51:51
Si, si, cierto, hay muchas maneras de desarrollar un proyecto...

Al final, yo siempre intento hacer objetos que pueda copiar en otros proyectos sin tener que hacer ningun cambio, o solo añadiéndole funcionalidades.

Por ejemplo, en tu caso, yo crearia un objeto (clase) para gestionar el localStorage, el cual lo puedas utilizar en cualquier otro proyecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar