Нужно чётко формулировать желания. На английском )
У массивов есть встроенные методы, которыми удобно решать задачи.
Хочется узнать, все ли элементы массива чётные? «Все» — "every"
arr.every( item => (item & 1) === 0 )
Узнать, какие элементы массива чётные? Что в результате получить.. Только четные элементы – значит, отфильтровать искомое, "filter":
arr.filter( item => (item & 1) === 0 )
Функциям хорошо бы давать понятные названия. В примерах выше одна и та же функция определяет четность очередного item'а. Можно её сделать отдельной функцией:
const isEven = num => (num & 1) === 0;
тут проверяется последний бит числа, если он
0
, значит, число четное. Годится только для небольших 32-битных целых.
Примеры станут лаконичнее:
arr.every(isEven) // false
arr.filter(isEven) // [2, 4, 6, 8, 10]