forked from soyHenry/WILL
-
Notifications
You must be signed in to change notification settings - Fork 0
/
06-07-08.js
executable file
·88 lines (70 loc) · 2.59 KB
/
06-07-08.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*
Importante:
No modificar ni el nombre ni los argumetos que reciben las funciones, sólo deben escribir
código dentro de las funciones ya definidas.
No comentar la funcion
*/
function crearClasePersona() {
class Persona {
constructor(nombre, edad, hobbies, amigos) {
// El constructor de la clase Persona recibe nombre (string), edad (integer), hobbies (array de strings), amigos (array de objetos)
// Inicializar las propiedades de la persona con los valores recibidos como argumento
// Tu código aca:
this.nombre= nombre;
this.edad= edad;
this.hobbies= hobbies;
this.amigos= amigos;
}
addFriend(nombre, edad) {
// El método 'addFriend' recibe un string 'nombre' y un entero 'edad' y debe agregar un objeto:
// { nombre: nombre, edad: edad} al arreglo de amigos de la persona.
// No debe retornar nada.
let amigo = {nombre, edad}
this.amigos.push(amigo);
}
addHobby(hobby) {
// El método 'addHobby' recibe un string 'hobby' y debe agregarlo al arreglo de hobbies de la persona.
// No debe retornar nada.
this.hobbies.push(hobby)
// Tu código aca:
}
getFriends() {
// El método 'getFriends' debe retornar un arreglo con sólo los nombres del arreglo de amigos
// de la persona.
// Ej:
// Suponiendo que la persona tiene estos amigos: [{nombre: 'martin', edad: 31},{nombre: 'toni', edad: 33}]
// persona.getFriends() debería devolver ['martin', 'toni']
// Tu código aca:
const nombres = this.amigos.map((amigo) => amigo.nombre);
return nombres
}
getHobbies() {
// El método 'getHobbies' debe retornar un arreglo con los hobbies de la persona
// Ej:
// persona.getHobbies() debe devolver ['correr', 'dormir', 'nadar']
// Tu código aca:
const listHobbies = this.hobbies.map((hobbie) => hobbie);
return listHobbies;
}
getPromedioEdad() {
// El método 'getPromedioEdad' debe retornar el promedio de edad de los amigos de una persona
// Ej:
// Si la persona tuviera estos amigos:
// {
// amigos: [{
// nombre: 'toni',
// edad: 33,
// }, {
// nombre: 'Emi',
// edad: 25
// }]
// }
// persona.getPromedioEdad() debería devolver 29 ya que (33 + 25) / 2 = 29
// Tu código aca:
return this.amigos.map(amigo => amigo.edad).reduce((a, b) => a + b) / this.amigos.length
}
};
return Persona;
}
// No modifiques nada debajo de esta linea //
module.exports = crearClasePersona