Thinking Recursively in vanilla Javascript