forked from HackYourFuture/JavaScript2
-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathmaartjes-work.js
More file actions
84 lines (75 loc) · 1.71 KB
/
maartjes-work.js
File metadata and controls
84 lines (75 loc) · 1.71 KB
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
'use strict';
const monday = [
{
name: 'Write a summary HTML/CSS',
duration: 180,
},
{
name: 'Some web development',
duration: 120,
},
{
name: 'Fix homework for class10',
duration: 20,
},
{
name: 'Talk to a lot of people',
duration: 200,
},
];
const tuesday = [
{
name: 'Keep writing summary',
duration: 240,
},
{
name: 'Some more web development',
duration: 180,
},
{
name: 'Staring out the window',
duration: 10,
},
{
name: 'Talk to a lot of people',
duration: 200,
},
{
name: 'Look at application assignments new students',
duration: 40,
},
];
const maartjesTasks = monday.concat(tuesday);
const maartjesHourlyRate = 20;
/* const computeEarnings = (tasks, hourlyRate) => {
let totalMins = 0;
for (let i = 0; i < tasks.length; i++) {
if (tasks[i].duration >= 120) {
totalMins += tasks[i].duration;
}
}
const hours = totalMins / 60;
return hours * hourlyRate;
}; */
const computeEarnings = (tasks, hourlyRate) => {
const hours = tasks.filter(function(task) {
return task.duration >= 120;
});
const total = hours.map(function(time) {
return time.duration / 60;
});
function sumofArray(sum, num) {
return sum + num;
}
return total.reduce(sumofArray) * hourlyRate;
};
// eslint-disable-next-line no-unused-vars
const earnings = computeEarnings(maartjesTasks, maartjesHourlyRate);
// add code to convert `earnings` to a string rounded to two decimals (euro cents)
console.log(`Maartje has earned €${Math.round((earnings + 0.00001) * 100) / 100}`);
// Do not change or remove anything below this line
module.exports = {
maartjesTasks,
maartjesHourlyRate,
computeEarnings,
};