Introduction
Closures let you keep a little piece of code and the variables it uses together, so you can use them later even outside their original place.
When you want to remember some settings or values inside a small piece of code to use later.
When you create a function inside another function and want the inner one to use variables from the outer one.
When you want to make a custom action that keeps some information hidden but still works when called.
When you want to delay running some code but keep the current values it needs.