1
+ /*
2
+ * EJERCICIO:
3
+ * Explora el concepto de clase y crea un ejemplo que implemente un inicializador,
4
+ * atributos y una función que los imprima (teniendo en cuenta las posibilidades
5
+ * de tu lenguaje).
6
+ * Una vez implementada, créala, establece sus parámetros, modifícalos e imprímelos
7
+ * utilizando su función.
8
+ *
9
+ * DIFICULTAD EXTRA (opcional):
10
+ * Implementa dos clases que representen las estructuras de Pila y Cola (estudiadas
11
+ * en el ejercicio número 7 de la ruta de estudio)
12
+ * - Deben poder inicializarse y disponer de operaciones para añadir, eliminar,
13
+ * retornar el número de elementos e imprimir todo su contenido.
14
+ *
15
+ */
16
+
17
+ /************* PARTE 1 *************/
18
+
19
+ class Perro {
20
+ constructor ( nombre = "Tiffany" , raza = "Poodle" , edad = 8 ) {
21
+ this . _nombre = nombre ;
22
+ this . _raza = raza ;
23
+ this . _edad = edad ;
24
+ }
25
+
26
+ get nombre ( ) {
27
+ return this . _nombre ;
28
+ }
29
+
30
+ set nombre ( nombre ) {
31
+ this . _nombre = nombre ;
32
+ }
33
+
34
+ get raza ( ) {
35
+ return this . _raza ;
36
+ }
37
+
38
+ set raza ( raza ) {
39
+ this . _raza = raza ;
40
+ }
41
+
42
+ get edad ( ) {
43
+ return this . _edad ;
44
+ }
45
+
46
+ set edad ( edad ) {
47
+ this . _edad = edad ;
48
+ }
49
+
50
+ toString ( ) {
51
+ return `Nombre: ${ this . _nombre }
52
+ Raza: ${ this . _raza }
53
+ Edad: ${ this . _edad } ` ;
54
+ }
55
+ }
56
+
57
+ const perro = new Perro ( ) ;
58
+ console . log ( perro . toString ( ) ) ;
59
+
60
+ console . log ( "Pero espera... ¡ES EL CUMPLEAÑOS DE TIFFANY!" ) ;
61
+ perro . edad = 9 ;
62
+ console . log ( perro . toString ( ) ) ;
63
+
64
+ /************* DIFICULTAD EXTRA *************/
65
+
66
+ class Pila {
67
+ constructor ( ) {
68
+ this . pila = [ ] ;
69
+ }
70
+
71
+ push ( elemento ) {
72
+ this . pila . push ( elemento ) ;
73
+ }
74
+
75
+ pop ( ) {
76
+ this . pila . pop ( ) ;
77
+ }
78
+
79
+ size ( ) {
80
+ return this . pila . length ;
81
+ }
82
+
83
+ print ( ) {
84
+ return this . pila ;
85
+ }
86
+ }
87
+
88
+ const pila = new Pila ( ) ;
89
+ pila . push ( "hola" ) ;
90
+ pila . push ( "mundo" ) ;
91
+ pila . push ( "!" ) ;
92
+ console . log ( pila . print ( ) ) ;
93
+ console . log ( pila . size ( ) ) ;
94
+
95
+ class Cola {
96
+ constructor ( ) {
97
+ this . cola = [ ] ;
98
+ }
99
+
100
+ encolar ( elemento ) {
101
+ this . cola . push ( elemento ) ;
102
+ }
103
+
104
+ desencolar ( ) {
105
+ this . cola . shift ( ) ;
106
+ }
107
+
108
+ size ( ) {
109
+ return this . cola . length ;
110
+ }
111
+
112
+ print ( ) {
113
+ return this . cola ;
114
+ }
115
+ }
116
+
117
+ const cola = new Cola ( ) ;
118
+ cola . encolar ( "hola" ) ;
119
+ cola . encolar ( "mundo" ) ;
120
+ cola . encolar ( "!" ) ;
121
+ cola . encolar ( "Soy" ) ;
122
+ cola . encolar ( "una" ) ;
123
+ cola . encolar ( "cola" ) ;
124
+ console . log ( cola . print ( ) ) ;
125
+ console . log ( cola . size ( ) ) ;
0 commit comments