Like the old [Albert Einstein][1] [said][2]: > If you can't explain it to a six-year-old, you really don't understand it yourself. Well, I tried to explain JavaScript closures to a 27-year-old friend and completely failed. How would you explain it to someone with a knowledge of the concepts which make up closures (for example, functions, variables and the like), but does not understand closures themselves? I have seen [the Scheme example][3] given on Stack Overflow, and it did not help. [1]: http://en.wikipedia.org/wiki/Albert_Einstein [2]: http://www.searchquotes.com/quotation/If_you_can%27t_explain_it_to_a_six_year_old,_you_don%27t_understand_it_yourself./333069/ [3]: http://en.wikipedia.org/wiki/Scheme_%28programming_language%29