Skip to content

Commit dd63174

Browse files
committed
1 parent b135099 commit dd63174

File tree

1 file changed

+29
-14
lines changed

1 file changed

+29
-14
lines changed

src/functions-and-arrays.js

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// Iteration #1: Find the maximum
22
function maxOfTwoNumbers(number1, number2) {
3+
34
if(number1 > number2) {
45
return number1;
56
}
@@ -10,29 +11,30 @@ function maxOfTwoNumbers(number1, number2) {
1011
return number1||number2;
1112
}
1213
}
13-
14+
maxOfTwoNumbers(1, 2);
1415

1516
// Iteration #2: Find longest word
1617
const words = ['mystery', 'brother', 'aviator', 'crocodile', 'pearl', 'orchard', 'crackpot'];
1718

1819
function findLongestWord(arr) {
20+
1921
let longest = arr[0];
2022
for (let i = 0; i < arr.length; i++) {
2123
if (arr[i].length > longest.length) return longest = arr[i];
2224
return;
2325
}
24-
25-
findLongestWord(words);
26+
}
27+
findLongestWord(words);
2628

2729

2830
// Iteration #3: Calculate the sum
2931
const numbers = [6, 12, 1, 18, 13, 16, 2, 1, 8, 10];
3032

3133
function sumNumbers(arr) {
32-
if(!arr) return 0;
33-
let sum=0;
34+
35+
let sum = 0;
3436
for(let i = 0; i < arr.length; i++) {
35-
sum = sum+arr[i];
37+
sum = sum + arr[i];
3638
}
3739
return sum;
3840
}
@@ -43,15 +45,28 @@ sumNumbers(numbers);
4345
const mixedArr = [6, 12, 'miami', 1, true, 'barca', '200', 'lisboa', 8, 10];
4446

4547
// should return: 57
46-
function sum(str) {
47-
48-
49-
let sumOfAString = 0;
50-
let addAString = str.split(' ');
51-
for(let i = 0; i < str.length; i++) {
52-
sumOfAString = sumOfAString + str[i];
48+
function sum(arr) {
49+
50+
let sum = 0;
51+
for(let i = 0; i < arr.length; i++)
52+
{
53+
if (typeof arr[i] === "number")
54+
{
55+
sum = sum + arr[i];
56+
}
57+
else if (typeof arr[i] === "string")
58+
{
59+
sum = sum + arr[i].length;
60+
}
61+
else if(typeof arr[i] === "boolean")
62+
{
63+
sum = sum + arr[i];
64+
}
65+
else{
66+
throw new Error("Unsupported data type");
67+
}
5368
}
54-
return sumOfAString;
69+
return sum;
5570
}
5671
sum(mixedArr);
5772

0 commit comments

Comments
 (0)