The dynamic nature of JavaScript means that a function is able to not only call itself, but define itself, and even redefine itself.