Skip to content
Advertisement

Array[position] returning NaN when it should be returning a string

The Problem: You are going to be given a word. Your job is to return the middle character of the word. If the word’s length is odd, return the middle character. If the word’s length is even, return the middle 2 characters.

My Solution

JavaScript

But i’m receiving a NaN output, rather than h , where has str[input] deviated from the my intention?

Thanks in advance!

Advertisement

Answer

Your execution was a little bit off!

  • I changed your isOdd function to return a boolean value, instead of a number.
  • After every calculation of the middle digit I subtracted 1 from the result, as we are working with indexes (and they start the count of the positions at 0, instead of 1).
  • For the second middle digit when the word length is even, you just have to do “str.length/2”, no need for adding or subtracting 1.

JavaScript
User contributions licensed under: CC BY-SA
5 People found this is helpful
Advertisement