javascript.patterns