Appendix A. JavaScript Closures
Throughout this book, we have seen many jQuery methods that take functions as parameters. Our examples have thus created, called, and passed around functions time and again. While usually we can do this with only a cursory understanding of the inner JavaScript mechanics at work, at times side effects of our actions can seem strange if we do not have knowledge of the language's features. In this appendix, we will cover:
JavaScript's ability to define functions within other functions
Ways in which function objects can be passed around
The scope of variables defined inside and outside functions
Common problems caused by variable scoping and closures
How jQuery constructs interact with function definitions
Memory issues that can be caused by the interactions between functions