Finding the only even or the only odd number in a string of space separated numbers in JavaScript


Problem

We are required to write a JavaScript function that takes in a string that contains numbers separated by spaces.

The string either contains all odd numbers and only one even number or all even numbers and only one odd number. Our function should return that one different number from the string.

Example

Following is the code −

 Live Demo

const str = '2 4 7 8 10';
const findDifferent = (str = '') => {
   const odds = [];
   const evens = [];
   const arr = str
   .split(' ')
   .map(Number);
   arr.forEach(num => {
      if(num % 2 === 0){
         evens.push(num);
      }else{
         odds.push(num);
      };
   });
   return odds.length === 1 ? odds[0] : evens[0];
};
console.log(findDifferent(str));

Output

Following is the console output −

7

Updated on: 20-Apr-2021

334 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements