function getEvenNumbers(numbers) { let evenNumbers = []; for (let i = 0; i < numbers.length; i++) { if (numbers[i] % 2 === 1) { evenNumbers.push(numbers[i]); } } return evenNumbers; } getEvenNumbers([1,2,3,4,5,6])
function getEvenNumbers(numbers) { let evenNumbers = []; for (let i = 0; i < numbers.length; i++) { if (numbers[i] % 2 === 1) { evenNumbers.push(numbers[i]); } } return evenNumbers; } getEvenNumbers([1,2,3,4,5,6])
Our logic is a little off. n % 2 will return 0 if n is an even number. The bug is that our code checks if it returns 1 (which would be an odd number).
To fix this, we can change that line to see if it evaluates to 0, not 1.
function getEvenNumbers(numbers) { let evenNumbers = []; for (let i = 0; i < numbers.length; i++) { if (numbers[i] % 2 === 0) { evenNumbers.push(numbers[i]); } } return evenNumbers; } getEvenNumbers([1,2,3,4,5,6])