The method signature is taken out of mostly every other library you have used before, specially in javascript. It would be kind of frustrating having the inverse as anything else. Other libraries (such as jquery and underscore.js) pass the value first as it is most likely the thing you will use when iterating.