Closures are a fundamental JavaScript concept that every serious programmer should know inside and out. The Internet is packed with great explanations of “what” closures are, but few deep-dive into the “why” side of things. I find that understanding the internals ultimately gives developers a stronger grasp of their tools, so this post will be dedicated to the nuts and bolts of how and why closure