Skip to content

Commit

Permalink
mouredev#25 - JavaScript "Extra"
Browse files Browse the repository at this point in the history
  • Loading branch information
JesusAntonioEEscamilla committed Jun 23, 2024
1 parent 6b10d16 commit 349b055
Showing 1 changed file with 44 additions and 1 deletion.
45 changes: 44 additions & 1 deletion Roadmap/25 - LOGS/javascript/JesusAntonioEEscamilla.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,49 @@ console.groupEnd();

/**-----DIFICULTAD EXTRA-----*/

// Pendiente
//Clase de Tareas
class TaskManager{
constructor(){
this.tasks = [];
}

// Agregar Tarea
addTask(nombre, descripción){
console.time(`Tiempo de Ejecución - Añadir tarea: ${nombre}`);
const task = {nombre, descripción};
this.tasks.push(task);
console.log(`Tarea añadida: "${nombre}" - "${descripción}"`);
console.timeEnd(`Tiempo de Ejecución - Añadir tarea: ${nombre}`);
return
}

// Borrar Tarea
removeTask(nombre){
console.time(`Tiempo de Ejecución - Eliminar tarea: ${nombre}`);
const initialLength = this.tasks.length;
this.tasks = this.tasks.filter(task => task.nombre !== nombre);
if (this.tasks.length === initialLength) {
console.error(`No se encontró la tarea con el nombre "${nombre}"`);
} else {
console.log(`Tarea eliminada: ${nombre}`);
}
console.timeEnd(`Tiempo de Ejecución - Eliminar tarea: ${nombre}`);
}

// Listar las Tareas
listTasks(){
console.log('Listado de tareas:');
console.table(this.tasks);
}
}

// Ejemplo de las Tareas
const tasksManager = new TaskManager();
tasksManager.addTask('Caminar', 'Caminar todos los días para bajar de peso');
tasksManager.addTask('Leer un libro', 'Leer por 10 minutos un libro');
tasksManager.addTask('Leer un libro', 'Leer por 10 minutos un libro');
tasksManager.listTasks();
tasksManager.removeTask('Caminar');
tasksManager.listTasks();

/**-----DIFICULTAD EXTRA-----*/

0 comments on commit 349b055

Please sign in to comment.