Description
- You get an array of numbers, return the sum of all of the positives ones.
Solution 01
function sumPositive(arr) {
let result = 0;
for (let i = 0; i < arr.length; i++) {
if (arr[i] > 0) {
result += arr[i];
}
}
return result;
}
sumPositive([]); // 0
sumPositive([0]); // 0
sumPositive([1, 2, 3, 4, 5]); // 15
sumPositive([-1, -2, -3, -4]); // 0
sumPositive([-1, 0, 1, 2]); // 3
Solution 02
function sumPositive(arr) {
let result = 0;
for (let i = 0; i < arr.length; i++) {
if (arr[i] > 0) result += arr[i];
}
return result;
}
sumPositive([]); // 0
sumPositive([0]); // 0
sumPositive([1, 2, 3, 4, 5]); // 15
sumPositive([-1, -2, -3, -4]); // 0
sumPositive([-1, 0, 1, 2]); // 3
Solution 03
function sumPositive(arr) {
let result = 0;
arr.forEach((i, index, arr) => {
if (i > 0) {
result += i;
}
});
return result;
}
sumPositive([]); // 0
sumPositive([0]); // 0
sumPositive([1, 2, 3, 4, 5]); // 15
sumPositive([-1, -2, -3, -4]); // 0
sumPositive([-1, 0, 1, 2]); // 3
Solution 04
function sumPositive(arr) {
return arr.reduce((result, i) => result + (i > 0 ? i : 0), 0);
}
sumPositive([]); // 0
sumPositive([0]); // 0
sumPositive([1, 2, 3, 4, 5]); // 15
sumPositive([-1, -2, -3, -4]); // 0
sumPositive([-1, 0, 1, 2]); // 3
Solution 05
function sumPositive(arr) {
return arr.filter(i => i > 0).reduce((result, i) => result + i, 0);
}
sumPositive([]); // 0
sumPositive([0]); // 0
sumPositive([1, 2, 3, 4, 5]); // 15
sumPositive([-1, -2, -3, -4]); // 0
sumPositive([-1, 0, 1, 2]); // 3