1
1
//EJERCICIO
2
2
let arr = [ 1 , 2 , 3 ] ;
3
3
4
- // console.log(arr.map((n) => n * 2));
4
+ console . log ( arr . map ( ( n ) => n * 2 ) ) ;
5
5
6
6
Array . prototype . customMap = function ( callback ) {
7
7
let result = [ ] ;
8
8
for ( let i = 0 ; i < this . length ; i ++ ) {
9
9
let element = callback ( this [ i ] ) ;
10
10
result . push ( element ) ;
11
11
}
12
-
13
12
return result ;
14
13
} ;
15
14
16
- // console.log(arr.customMap((n) => n * 2));
15
+ console . log ( arr . customMap ( ( n ) => n * 2 ) ) ;
17
16
18
17
/*
19
18
* DIFICULTAD EXTRA (opcional):
@@ -28,58 +27,33 @@ Array.prototype.customMap = function (callback) {
28
27
* - Mayor calificación: Obtiene la calificación más alta de entre todas las
29
28
* de los alumnos.
30
29
* - Una calificación debe estar comprendida entre 0 y 10 (admite decimales).
31
-
32
- let myStudents = [
33
- {
34
- name: 'Ric',
35
- birthDate : new Date(2002, 8, 22),
36
- grades: [6, 7, 9, 7, 8, 9]
37
- },
38
- {
39
- name: 'Eric',
40
- birthDate: new Date(2002, 5, 5),
41
- grades: [9, 8, 9, 7, 9, 8],
42
- },
43
- {
44
- name: 'Rebeca',
45
- birthDate: new Date(2003, 0, 2),
46
- grades: [8, 7, 9, 6, 9, 8],
47
- }
48
- ];
49
- */
30
+ */
50
31
51
32
let myStudents = [ ] ;
52
33
53
34
class Student {
54
- constructor ( name ) {
35
+ constructor ( name , grades , date , month , year ) {
55
36
this . name = name ;
56
- this . grades = [ ] ;
57
- }
58
-
59
- setBirthdate ( date , month , year ) {
37
+ this . grades = grades ;
60
38
let birthDateNoFormat = new Date ( year , month - 1 , date ) ;
61
39
this . birthDate = birthDateNoFormat . toLocaleString ( ) ;
40
+ myStudents . push ( this ) ;
62
41
}
63
- }
64
42
65
- function createStudent ( name , date , month , year ) {
66
- let student = new Student ( name ) ;
67
- student . setBirthdate ( date , month , year ) ;
68
- myStudents . push ( student ) ;
43
+ getAverage ( ) {
44
+ let result = 0 ;
45
+ this . grades . forEach ( ( element ) => {
46
+ result = result + element ;
47
+ } ) ;
48
+ return result / this . grades . length ;
49
+ }
69
50
}
70
51
71
- Array . prototype . getAverage = function ( ) {
72
- let result = 0 ;
73
- this . forEach ( ( element ) => {
74
- result = result + element ;
75
- } ) ;
76
- return result / this . length ;
77
- } ;
78
-
79
- createStudent ( 'Sophie' , 12 , 3 , 2004 ) ;
80
-
81
- createStudent ( 'David' , 23 , 5 , 2005 ) ;
82
-
83
- let randomArr = [ 5 , 4 , 5 , 6 , 7 ] ;
52
+ new Student ( 'Sophie' , [ 8 , 8 , 7 , 9 ] , 12 , 11 , 2004 ) ;
53
+ new Student ( 'David' , [ 7 , 6 , 9 , 8 ] , 23 , 1 , 2005 ) ;
54
+ new Student ( 'Eliezer' , [ 4 , 6 , 7 , 5 ] , 21 , 2 , 2005 ) ;
55
+ new Student ( 'Rebeca' , [ 8 , 9 , 10 , 9 ] , 16 , 5 , 2005 ) ;
84
56
85
- console . log ( randomArr . getAverage ( ) ) ;
57
+ myStudents . forEach ( ( element ) => {
58
+ console . log ( `\nEl promedio de ${ element . name } es de ${ element . getAverage ( ) } ` ) ;
59
+ } ) ;
0 commit comments