documentcloud/underscore — comment on commit 9e4192729375c8eab68913d36de9fbb8ffbbdfcc
File:  line 0
By jashkenas:

Underscore behaves as it claims. When I use a library function for iteration, an `each`, on an object, I expect it to work as a `for (key in obj)` does. I do not expect or hope it to enumerate through 7 special keys *every* time I call `each`. While I'm aware that this is the only way to work around IE's terrible DontEnum bug, I would hope that the library I'm using has the sense to forgo this workaround -- as it's not simply not worth the cost. I don't think I'm overestimating when I say that 99.9% of all `_.each` calls will never have any trouble with the DontEnum bug.

Perhaps it can be put better this way. If I were using a library that added this DontEnum fix, and I noticed it, I would probably stop using it's implementation of `each` immediately, and just write `for (key in obj)` instead, for nearly all of my code. Underscore's `each` wants to be useful, not pristine.