-
Notifications
You must be signed in to change notification settings - Fork 0
/
trainingDays.js
94 lines (72 loc) · 2.41 KB
/
trainingDays.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
89
90
91
92
93
// The scope of `random` is too loose
// in the end of project, as we have two athlets we had to remove const random = Math.floor(Math.random() * 3); into getRndEvent() function
const getRandEvent = () => {
const random = Math.floor(Math.random() * 3);
if (random === 0) {
return 'Marathon';
} else if (random === 1) {
return 'Triathlon';
} else if (random === 2) {
return 'Pentathlon';
}
};
// The scope of `days` is too tight
const getTrainingDays = event => {
// first we had days variable outside the function
let days;
if (event === 'Marathon') {
days = 50;
} else if (event === 'Triathlon') {
days = 100;
} else if (event === 'Pentathlon') {
days = 200;
}
// return time;
return days;
};
// added time
const getTrainingHours = event => {
// first we had days variable outside the function
let time;
if (event === 'Marathon') {
time = '9am';
} else if (event === 'Triathlon') {
time = '12pm';
} else if (event === 'Pentathlon') {
time = '2pm';
}
// return time;
return time;
};
// The scope of `name` is too tight
const name = 'Minja';
// for us to be able to call name and event, we had to add add name as the first parameter for each function and move name to variable to global scope.
const logEvent = (name, event) => {
console.log(`${name}'s event is: ${event}`);
};
const logTime = (name, days) => {
console.log(`${name}'s time to train is: ${days} days`);
};
const logHours = (name, time) => {
console.log(`${name}'s time to train is at ${time}`);
};
const finalSent = (name, days, time) => {
console.log(`${name} will run ${event} and will train for ${days} days, training begins at ${time}`);
};
const event = getRandEvent();
const days = getTrainingDays(event);
const time = getTrainingHours(event);
// Define a `name` variable. Use it as an argument after updating logEvent and logTime
logEvent(name, event);
logTime(name, days);
logHours(name,time);
finalSent(name,days,time);
// we added second athlete for us to see the structure of functions and possible errors - in the end of project, as we have two athlets we had to remove const random = Math.floor(Math.random() * 3); into getRndEvent() function
const event2 = getRandEvent();
const days2 = getTrainingDays(event2);
const time2 = getTrainingHours(event2);
const name2 = 'Alex';
logEvent(name2, event2);
logTime(name2, days2);
logHours(name2,time2);
finalSent(name2,days2,time2);