Skip to content

Commit f0f8353

Browse files
committed
Add solutions
1 parent d5382ec commit f0f8353

File tree

5 files changed

+48
-0
lines changed

5 files changed

+48
-0
lines changed

Solutions/1-for.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
'use strict';
2+
3+
const sum = (...args) => {
4+
let value = 0;
5+
for (let i = 0; i < args.length; i++) {
6+
value += args[i];
7+
}
8+
return value;
9+
};
10+
11+
module.exports = { sum };

Solutions/2-for-of.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
'use strict';
2+
3+
const sum = (...args) => {
4+
let value = 0;
5+
for (const arg of args) value += arg;
6+
return value;
7+
};
8+
9+
module.exports = { sum };

Solutions/3-while.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
'use strict';
2+
3+
const sum = (...args) => {
4+
let value = 0;
5+
while (args.length > 0) {
6+
value += args.shift();
7+
}
8+
return value;
9+
};
10+
11+
module.exports = { sum };

Solutions/4-do-while.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
'use strict';
2+
3+
const sum = (...args) => {
4+
if (args.length === 0) return 0;
5+
let value = 0;
6+
do {
7+
value += args.shift();
8+
} while (args.length > 0);
9+
return value;
10+
};
11+
12+
module.exports = { sum };

Solutions/5-reduce.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
'use strict';
2+
3+
const sum = (...args) => args.reduce((a, b) => (a + b), 0);
4+
5+
module.exports = { sum };

0 commit comments

Comments
 (0)