TitleCase String Challenge

How come the code below does not work?

function titleCase(str) {
  
  str = str.toLowerCase().split(' ');
  
  for (var x = 0; str[x]; x++) {
   str[x][0] = str[x][0].toUpperCase();

  }
  return str;
  
 }

titleCase("heya brother how are you?");

Thanks so much, Randell. That makes perfect sense.