In all fairness though, it's very easy to bash JS, but the anonymous functions etc., that are really core to the language are pretty powerful. I used to hate it a lot more than I do now, but one day I realized that apart from its more patchy areas (no strftime, what?), it actually covers off a lot of coding styles and patterns you need in order to get stuff done.