https://learn.coderslang.com/0245-recursive-functions-in-javascript/
Recursive Functions in JavaScript