Offtopic follows:
One thing that sucks about JS currently is the fact that you have to do Array.prototype.map.call(a, ...) instead of a.map, and even then you don't have a guarantee that the correct function will execute. I know in ECMAScript 5 you can freeze properties of an object, but unless prototypes of basic methods come frozen, it's not ideal.