Essential JavaScript And jQuery Design Patterns
addyosmani.com
addyosmani.com
$(document).ready(function(){ ... });
or some analogue. This is presented, without explanation, as an example of the “Lazy Instantiation Pattern.” What!?Here’s an actual pattern (if not a design pattern), just from my own experience: Some people like to always name variables holding jQuery instances with names beginning with $. For example:
var $toggles = $('.toggle');
Useful in that you know, at a glance, how to interact with that variable (e.g. .html() instead of .innerHtml).Now, at least for me (and I know I'm not alone here), my brain actually has a harder time parsing that crap because it just looks like a bunch of spaghetti PHP.
Focus on making your code well designed and structured; naming conventions are a band-aid on a larger problem, IMO.
$('#container').toggle(function(){}, function(){});
follows the strategy pattern, is essentially meaningless without context or explanation. Just reading the wikipedia design patterns page is probably more helpful:http://en.wikipedia.org/wiki/Design_Patterns and move on to GoF for more advanced theory.Also, I do the $var differentiation too. It may be ugly, but it comes in real handy, because you automatically decipher whether a variable is a $('div') or a div.