JavaScript Closures explained | Dark Hacker News