1+ // ** EJERCICIO
2+
3+ console . trace ( 'TRACE envía mensajes detallados sobre la ejecución del programa' )
4+ console . debug ( 'DEBUG son mensajes destinados a la depuración del software, prueba de código...' )
5+ console . info ( 'INFO son mensajes informativos que indican funcionamiento normal del código' )
6+ console . warn ( 'WARN son mensajes de advertencia que indican situaciones potencialmente problemáticas' )
7+ console . error ( 'ERROR son errores que han ocurrido en la aplicación' )
8+
9+ // además, hay más tipos de logs
10+
11+ console . log ( "Mensaje informativo" ) ;
12+
13+ console . group ( "Grupo de mensajes" ) ;
14+ console . log ( "Mensaje dentro del grupo" ) ; // Este mensaje sale como si fuera en un tabulador
15+ console . groupEnd ( ) ;
16+
17+ console . time ( "Tiempo de ejecución" ) ;
18+ // Código cuya ejecución quieres medir
19+ console . timeEnd ( "Tiempo de ejecución" ) ;
20+
21+ console . trace ( "Traza de pila" ) ; // Output: stack trace
22+
23+ // ** DIFICULTAD EXTRA ** -------------------------------------------------------------------------------------------------------------------------------------------------------
24+
25+ const readline = require ( 'node:readline' )
26+
27+ const gestorTareas = [
28+ { Nombre : 'Tarea1' , Descripcion : 'Esta es una tarea de prueba' }
29+ ]
30+
31+ const rl = readline . createInterface ( {
32+ input : process . stdin ,
33+ output : process . stdout
34+ } ) ;
35+
36+ function preguntaInicio ( ) {
37+ rl . question ( '\n¿Qué quieres hacer?\n[Añadir] - [Eliminar]\n' , ( respuestaInicio ) => {
38+ if ( respuestaInicio === 'Añadir' ) {
39+ rl . question ( 'Introduzca el nombre de la tarea que desea agregar: ' , ( tareaAgregar ) => {
40+ rl . question ( `Introduzca la descripción de la tarea ${ tareaAgregar } : ` , ( descripcionAgregar ) => {
41+ console . time ( 'Tiempo de ejecución' )
42+ gestorTareas . push ( { Nombre : tareaAgregar , Descripcion : descripcionAgregar } )
43+ console . group ( `\nLa tarea ${ tareaAgregar } se ha agregado satisfactoriamente` )
44+ console . timeEnd ( 'Tiempo de ejecución' )
45+ console . groupEnd ( )
46+ preguntaInicio ( )
47+ } )
48+ } )
49+ } else if ( respuestaInicio === 'Eliminar' ) {
50+ rl . question ( 'Introduzca el nombre de la tarea que desea eliminar: ' , ( tareaEliminar ) => {
51+ console . time ( 'Tiempo de ejecución' )
52+ gestorTareas . splice ( ( gestorTareas . findIndex ( ( tarea ) => tarea . Nombre === tareaEliminar ) ) , 1 ) ;
53+ console . group ( `\nLa tarea ${ tareaEliminar } se ha eliminado satisfactoriamente` )
54+ console . timeEnd ( 'Tiempo de ejecución' )
55+ console . groupEnd ( )
56+ preguntaInicio ( )
57+ } )
58+ preguntaInicio ( )
59+ } else {
60+ console . warn ( '\nPor favor, introduzca una respuesta válida' )
61+ preguntaInicio ( )
62+ }
63+ } ) ;
64+ }
65+
66+ preguntaInicio ( )
0 commit comments