For an assignment I am supposed to write a recursive function that checks any integer for even or odd using N-2. If even returns true else returns false. But it returns undefine
You have forgotten the return
statement before the recursive isEven(num)
call.
See the snippet below:
function isEven(num) {
//console.log("top of function num = " + num);// For Debugging
if (num == 0){
return true;
}
else if (num == 1){
return false;
}
else {
num -= 2;
return isEven(num);
}
}
console.log('0 is even: ', isEven(0));
// → true
console.log('1 is even: ', isEven(1));
// → false
console.log('8 is even: ', isEven(8));
You can change the following line:
isEven(num);
to
return isEven(num);