'Count of Positives/ Sum of Negatives

We are supposed to return the count of all the positive numbers given an array, and the addition of all the numbers given the same array. Could someone tell me what I am doing wrong please. I would really appreciate it. This is what I put as my code(JavaScript):

function countPositivesSumNegatives(input) {
  let arr = [];

  let count = 0;

  let neg = 0;

  for (let i = 0; i <= input.length; i++) {
    if (input[i] > 0) {
      count++;
    } else if (input[i] < 0) {
      neg += input[i];
    }
    return arr.push(count, neg);
  }
}


Solution 1:[1]

function countPositivesSumNegatives(input) {
  let count = 0;
  let neg = 0;

  for (let i = 0; i <= input.length; i++) {
    if (input[i] > 0) {
      count++;
    } else if (input[i] < 0) {
      neg += input[i];
    }
  }
  // Return outside the for loop
  return [count, neg];
}

console.log(countPositivesSumNegatives([1,2,4,-1,0,-2,3,-4]))

Solution 2:[2]

function countPositivesSumNegatives(input) {
  let count = 0;
  let neg = 0;

  for (const number of input) {
    if (number > 0) {
      count++;
    } else if (number < 0) {
      neg += number;
    }
  }
  
  return [count, neg];
}

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Bob
Solution 2 diyarovski